Unresolved ConfigMap reference in container environment variables

You can use ConfigMaps as values for container environment variables. This validator detects a condition when a ConfigMap used as a source for environment variables in the container spec is not found. That can happen if the ConfigMap was deleted or renamed, or there was a typo in the envFrom.configMapKeyRef. Note that this check is skipped when the reference is marked as optional.

Affected Resources: Deployment, DaemonSet, StatefulSet, CronJob, Job, ReplicaSet, Pod

Example

kind: Deployment spec: template: spec: containers: - name: my-container env: - name: MY_ENV_VAR valueFrom: configMapKeyRef: name: my-config-map # This ConfigMap is not present key: key-in-my-config-map optional: false envFrom: - configMapRef: name: my-other-config-map # This ConfigMap is not present optional: false

Resolution

  • Check if the ConfigMap is present in the same namespace.
  • Check if the ConfigMap is present in a different namespace. Kubevious Search can be a very handy tool to find ConfigMaps across namespaces. You cannot mount a ConfigMap from a different namespaces. In that case you would need to create a ConfigMap in namespace where the Pod resides.
  • Did you make a typo in the container environment variables spec? Kubevious Search uses fuzzy logic to return results and can help with finding the correct ConfigMap.
  • Need other validation rules?

    Please let us know if there are other built-in validation rules you would like to see in Kubevious to detect misconfigurations and violations to best practices. Optionally, you can provide your details so we can reach out to you with follow-up questions.

    Share this article on:
    message