helm-kubernetes-services icon indicating copy to clipboard operation
helm-kubernetes-services copied to clipboard

Can not mount ConfigMap and Secret as volume if they have same name

Open yorinasub17 opened this issue 2 years ago • 0 comments

Describe the bug If you have a ConfigMap and Secret that has the same name, you can't mount both as a volume due to a volume name collision. This is because the template will name both volumes as NAME-volume.

The proposed fix is to support specifying a custom volume name to avoid the collision. E.g.,

configMaps:
  myconfig:
    as: volume
    mountPath: /etc/myconfig/config
    volumeName: myconfig-configmap-volume

To Reproduce

  • Create a ConfigMap and Secret that has the same name (e.g., myconfig).
  • Try to mount both as volumes:
configMaps:
  myconfig:
    as: volume
    mountPath: /etc/myconfig/config

secrets:
  myconfig:
    as: volume
    mountPath: /etc/myconfig/secrets

Expected behavior Mount both the ConfigMap and Secret as a volume.

Actual behavior Error:

Helm install failed: Deployment.apps "myapp" is invalid: spec.template.spec.volumes[1].name: Duplicate value: "myconfig-volume"

yorinasub17 avatar Jan 03 '23 18:01 yorinasub17