bug(helm): certgen hook is rejected by Restricted Pod Security
Les mainteneurs répondent en général sous 1 jour
@lunarwhite y travaille déjà.
Depuis le 15/9/2026.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 74/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- helm, kubernetes
- Domaine
- devops, infrastructure, security
Piste de recherche
Commencez par le template du chart Helm OpenShell qui rend le certgen Job et comparez-le aux contextes de sécurité configurables du pod et du conteneur de la gateway. Exécutez helm template avec les paramètres de reproduction, puis inspectez les tests du chart. C’est terminé lorsque le hook rendu par défaut passe Restricted admission, expose des overrides spécifiques à certgen et est couvert par des tests sans nécessiter de migration pour les installations existantes.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
User Story
As a Kubernetes platform operator enforcing the Restricted Pod Security Standard on controller namespaces, I want the OpenShell Helm chart's certificate-generation hook to pass admission, so that I can install the gateway without weakening the namespace security policy.
Problem Statement
OpenShell Helm chart 0.0.116 renders Job/<release>-certgen without a pod securityContext and without runAsNonRoot or seccompProfile on its container. The container already drops all capabilities and disables privilege escalation, but Kubernetes Restricted Pod Security admission still rejects the hook for the missing non-root and seccomp settings.
The main gateway workload can already be configured with podSecurityContext and securityContext; the certgen hook does not inherit those settings and exposes no equivalent values.
Impact / Why This Matters
The pre-install/pre-upgrade hook blocks the entire Helm release in a namespace labeled pod-security.kubernetes.io/enforce: restricted. Operators must either weaken admission for the trusted gateway namespace or carry a Flux/Helm post-render patch for a security-sensitive hook. The post-render workaround is coupled to the hook resource name and container position and can silently stop matching after a chart refactor unless it is separately tested.
Acceptance Criteria
- A default
helm templaterender of the certgen Job satisfies the Restricted Pod Security Standard for the chart's supported Kubernetes versions. - The certgen pod and container run as non-root and declare a Restricted-compatible seccomp profile.
- The chart exposes certgen-specific pod/container security-context values if operators need to override the defaults.
- Chart tests cover the rendered certgen security context.
- Existing installs that do not enforce Pod Security continue to upgrade without manual migration.
Reproduction Steps
- Create a namespace with
pod-security.kubernetes.io/enforce: restricted(tested with policy versionv1.36). - Install OpenShell chart
0.0.116with Agent Sandbox available andpkiInitJob.enabled: true. - Observe that
Job/<release>-certgenis rejected by Pod Security admission for missingrunAsNonRootandseccompProfilefields. - Render the chart and compare the certgen Job with the configurable gateway StatefulSet security contexts.
Environment
- OpenShell Helm chart:
0.0.116, OCI digestsha256:df55cd1538bdfb7836834c30dfcf8373b85ffea83bbfd70d50dbe69407a0d2b3 - Kubernetes:
v1.36.4 - Distribution: Talos Linux
v1.13.9 - Deployment: Flux HelmRelease, Kubernetes Agent Sandbox driver
Logs
The rendered certgen container has allowPrivilegeEscalation: false and drops ALL, but neither the pod nor container declares runAsNonRoot or seccompProfile. Restricted admission reports those missing fields under the restricted policy.
- Langage dominant
- Rust
- Étoiles
- 15.4k
- Forks
- 1.7k
- Merge moyen
- 1 j 21 h
- PR mergées (30 j)
- 366
Préparer son environnement
- Aucun Dockerfile ni fichier Docker Compose
- Propose un modèle de pull request
- Lire le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de NVIDIA/OpenShell
-
state:triage-needed
Difficulté 2/5 1-3 heures Accessibilité débutants 70/100
Les mainteneurs répondent en général sous 1 jour
-
docs: document workspace and provider label capabilitiesPeut-être pris @johntmyers l’a pris il y a 3 jours. Ouvertearea:docs
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
NVIDIA/OpenShell#4250 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
bug(driver-mxc): test helper fails to compile after gateway-name argumentPeut-être pris @feloy l’a pris il y a 5 jours. Ouvertestate:triage-needed
Difficulté 1/5 Moins d'une heure Accessibilité débutants 88/100
Les mainteneurs répondent en général sous 1 jour
-
bug: install.sh ignores XDG_CONFIG_HOME for the local gateway configPeut-être pris @fede-kamel l’a pris il y a 8 jours. Ouvertearea:cli os:linux os:macos state:validated
Difficulté 2/5 1-3 heures Accessibilité débutants 88/100
NVIDIA/OpenShell#4042 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
-
state:triage-needed
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
NVIDIA/OpenShell#3995 · 2 commentaires ·
Les mainteneurs répondent en général sous 1 jour
Toutes les issues de NVIDIA/OpenShell
Issues similaires
-
bug user-priority/P2
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
t8y2/dbx#11718 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
rescript-lang/rescript#8765 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
nautechsystems/nautilus_trader#5287 ·
Les mainteneurs répondent en général sous 1 jour
-
bug
Difficulté 2/5 1-3 heures Accessibilité débutants 62/100
farion1231/cc-switch#8072 ·
Les mainteneurs répondent en général sous 1 jour
-
Python 3.15 supportPeut-être pris @amnesiaof l’a pris aujourd’hui. OuverteL: python L: python:uv
Difficulté 2/5 1-3 heures Accessibilité débutants 72/100
dependabot/dependabot-core#16524 · 1 commentaire ·
Les mainteneurs répondent en général sous 1 jour