bug(helm): certgen hook is rejected by Restricted Pod Security
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 74/100
- Tipo de issue
- Error
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- helm, kubernetes
- Área
- devops, infrastructure, security
Línea de trabajo
Comienza con la plantilla del chart de Helm de OpenShell que renderiza el certgen Job y compárala con los contextos de seguridad configurables del pod y del contenedor del gateway. Ejecuta helm template usando la configuración de reproducción y, después, inspecciona las pruebas del chart. Se considera terminado cuando el hook renderizado por defecto supera Restricted admission, expone overrides específicos de certgen y está cubierto por pruebas sin requerir una migración para las instalaciones existentes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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.
- Lenguaje dominante
- Rust
- Estrellas
- 8.7k
- Forks
- 1.3k
- Merge medio
- 2 d 8 h
- PR fusionados (30 d)
- 271
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de NVIDIA/OpenShell
-
area:docs
Dificultad 1/5 Menos de una hora Aptitud para principiantes 88/100
-
state:triage-needed
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
-
area:cli state:validated
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
state:triage-needed
Dificultad 1/5 Menos de una hora Aptitud para principiantes 90/100
-
area:build spike state:review-ready state:stale
Dificultad 2/5 Medio día Aptitud para principiantes 68/100
Todos los issues de NVIDIA/OpenShell
Issues similares
-
Browser (wasm) relay client cannot connect to relays whose URL has a trailing-dot FQDN hostname Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
n0-computer/iroh#4550 ·
-
impl detach for native Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
paritytech/zombienet-sdk#591 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
farion1231/cc-switch#7638 · 1 comentario ·
-
onnx-ir re-exports ModelProto and GraphProto but not NodeProto, AttributeProto and AttributeType Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100