vmware-tanzu / velero-plugin-for-vsphere

Plugin to support Velero on vSphere
Other
59 stars 49 forks source link

Consider the ability to explicitly configure image names #379

Open aceeric opened 3 years ago

aceeric commented 3 years ago

This relates to https://github.com/vmware-tanzu/velero-plugin-for-vsphere/issues/378

We're installing velero, and the velero plugin for aws, and velero plugin for vsphere in an air-gapped environment using the helm chart https://github.com/vmware-tanzu/helm-charts/releases/tag/velero-2.23.3

In our air-gapped registry we import images from many external registries and organizations. To minimize the possibility of name collisions we mangle image names. So docker.io/velero/velero-plugin-for-vpshere becomes our-internal-registry/our-project/velero-velero-plugin-for-vpshere

It would be useful for us (and potentially others) to be able to explicitly override the images spawned by the plugin directly in the helm chart. E.g.:

values:
  initContiainers:
  - name: velero-plugin-for-vsphere
    image: our-internal-registry/our-project/velero-velero-plugin-for-vpshere
    args:
    - backup-driver-repo=velero-backup-driver
    - data-manager-for-plugin-repo=velero-data-manager-for-plugin

Or something akin to that. Basically, to be able to explicitly override the constant value in the go code... It's hard to anticipate everyone's configuration so the ability to explicitly define images is often useful.

lintongj commented 3 years ago

Thanks for your suggestion. What about filling in these arguments in a specific config-map in velero namespace? Is it also acceptable from users' point of view?

aceeric commented 3 years ago

Yes I think that would be fine as well. Alternately, environment variables in the init container could be used. There are many approaches. As long as the flexibility is there - it will be fine. Thank you.