这是indexloc提供的服务,不要输入任何密码
Skip to content

Align trident-operator Helm chart values with Helm best practices for image, tag, and registry customization #1032

@hrivera-ntap

Description

@hrivera-ntap

The current implementation of the trident-operator Helm chart does not follow a standard or intuitive approach for specifying and customizing container images—particularly when it comes to overriding image registries for the various Trident components. In environments that rely on private registry mirrors, users are unable to easily override the registry during chart installation. Instead, they must manually identify and override each individual image tag used by the chart, which places an unnecessary burden on the chart consumer.

For example, say one wants to change the image registry to use an internal mirror "foobar.mycompany.com". To achieve this one must do the following:

            imageRegistry: "foobar.mycompany.com/sig-storage"
            tridentImage: "foobar.mycompany.com/netapp/trident:25.02.0"
            operatorImage: "foobar.mycompany.com/netapp/trident-operator:25.02.0"
            tridentAutosupportImage: "foobar.mycompany.com/netapp/trident-autosupport:25.02.0" 

Notice the un-intuitive value that was required for imageRegistry. If there was a way to avoid having to hard-code image tags to accomplish this, that would be ideal.

This is a request for enhancement (RFE) to standardize image and registry customization in the Helm chart, following best practices established by popular open-source charts such as those from Bitnami. Adopting these patterns would provide users with greater flexibility and a more streamlined experience when customizing the chart.

Examples of best practices:

Global registry overrides:
https://github.com/bitnami/charts/blob/main/bitnami/grafana/values.yaml#L14-L15
https://github.com/bitnami/charts/blob/main/bitnami/postgresql/values.yaml#L7-L17

Component-level image customization:
https://github.com/bitnami/charts/blob/main/bitnami/grafana/values.yaml#L77-L92
https://github.com/bitnami/charts/blob/main/bitnami/cert-manager/values.yaml#L86-L95
https://github.com/bitnami/charts/blob/main/bitnami/grafana/values.yaml#L976-L989

Other charts with similar techniques:
https://github.com/metallb/metallb/blob/main/charts/metallb/values.yaml#L203-L206
https://github.com/traefik/traefik-helm-chart/blob/master/traefik/values.yaml#L5-L14
https://github.com/traefik/traefik-helm-chart/blob/master/traefik/values.yaml#L614-L622

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions