argocd-image-updater
argocd-image-updater copied to clipboard
Introduce configuration using Custom Resources instead of annotations
Is your feature request related to a problem? Please describe.
Currently, Argo CD Image Updater is configured in two ways:
-
The images and applications to be updated are configured by applying annotation on Argo CD's
Applicationresources. This is cumbersome (need to for each application which uses a certain image) and error prone (e.g. typos). -
Additionally registry configuration is done using a YAML within a ConfigMap resource, e.g.
registries.conf
Describe the solution you'd like
We want to make the configuration of Argo CD Image Updater - both for registries and applications - to be a strongly typed one, so that creating a configuration becomes less error prone. Also, we want to decouple the image configuration from a single Application resource, so that it becomes easier to say "update image foobar in all applications matching a giving pattern/project/label selector`.
For this, two new CRDs should be introduced:
argoproj.io/ImageUpdateConfigfor describing images to be updated and mapping them toApplicationsargoproj.io/RegistryConfigfor configuring custom registries to be used by Image Updater
The APIs have yet to be defined and are currently work in progress. But they will eventually replace the current way of configuring Image Updater.
An initial version of the APIs/CRDs will be attached to this issue once they are in a reviewable state.
@jannfis Just curious if you've made any progress on this front?