Description
When deploying the Datadog Helm chart on OpenShift with podSecurity.securityContextConstraints.create: true, the generated SCC includes an empty allowedFlexVolumes: [] field. OpenShift automatically omits empty arrays from the SCC specification, causing ArgoCD to perpetually show the application as "OutOfSync" due to the field difference.
Environment
- Datadog Helm Chart Version: 3.137.2
- OpenShift Version: 4.x
- ArgoCD Version: 3.0.19
- Deployment method: GitOps with ArgoCD
Current Behavior
- Helm chart generates SCC with
allowedFlexVolumes: []
- OpenShift creates the SCC but omits the empty
allowedFlexVolumes field
- ArgoCD detects a difference between desired (Helm template) and actual (OpenShift) state
- Application remains perpetually "OutOfSync"
Expected Behavior
The Helm chart should either:
- Omit the
allowedFlexVolumes field entirely when it's empty, OR
- Provide a way to control whether this field is included in the generated SCC
Reproduction Steps
- Deploy Datadog using the Helm chart with these values:
agents:
podSecurity:
securityContextConstraints:
create: true