New Release for Argo CD Image Updater — 0.15
We are pleased to announce a brand new release of Argo CD Image Updater, the companion controller to Argo CD for automatically updating container images in Argo CD applications. Read on for more details.

Argo CD Image Updater is a project available at Argo Labs. You can use it to automatically monitor your container registries and instruct your applications to perform a redeployment when a new version of a container is available. This means that you can gain the benefits of continuous delivery without the need of custom pipelines for updating your Kubernetes manifest.
This release includes 6 new features, 16 fixes and several documentation updates.
Here are some highlights:
Support of other namespaces apart from “argocd”
Traditionally all Argo CD application manifests are deployed in the “argocd” namespace. In recent versions of Argo CD you can now use any namespace for your applications (argocd is still the default).
There is now support for making Argo CD Image Updater work with Argo CD applications that are not on the argocd namespace.
Thanks S Ribiere (Jellysmack) for implementing this feature.
Preserve field order when updating Kustomize files
Argo CD Image Updater has built-in support for Kustomize applications. If the Git write back method is used, Argo CD Image Updater can also update the container image in the kustomization YAML file of the application.
Unfortunately the field order was not preserved. This means that running “git diff” (or using Argo CD) would show inconsistent changes that were not related to the image update.
Now Argo CD Image Updater will preserve the existing field order before and after the update in a predictable manner making automation with other tools much easier.
Thanks Jaye Doepke (Mintel) for implementing this feature.
Updating multiple images when using Helm value files
Apart from Kustomize, Argo CD Image Updater can also monitor Helm charts and automatically update container tags mentioned in Helm value files.
In the most typical case a single Helm application will contain a single container image reference. Argo CD Image Updater will correctly detect the new version of the image and update it on the value files.
Sometimes however a single Helm application will contain multiple container tags. In this case Argo CD Image Updater would detect changes in all images but only update one of them. This process was now updated and now Argo CD Image Updater will work correctly with multi-image applications with the expected behavior.
Thanks Lyupcho Kotev (Codira AB) for implementing this feature.
Updating Argo CD applications when auto-sync is disabled
The main benefit of Argo CD Image Updater is fully automating all application deployments. A new container image is published in the registry, Argo CD Image Updater detects it and writes back to Git, Argo CD takes over and syncs all changes.
Some organizations however do not employ the auto-sync behavior of Argo CD. This can happen in several cases when deployments must happen manually (usually in production environments). In those scenarios Argo CD Image Updater would not “see” the updated image in the live application (as it was never deployed by Argo CD). This makes Argo CD Image Updater fall in a constant loop where it tries to update the same image again and again, but Argo CD does not deploy anything since auto-sync is disabled.
This behavior has now changed and Argo CD Image Updater will work even for Argo CD applications where auto-sync is disabled. Argo CD Image Updater will update the image only once as expected and then skip any further changes even if they are not yet on the live application definition.
Thanks Surya Asriadie (Smart News) for implementing this feature.
Support for Argo CD multi-source application sets
Argo CD Image Updater recently gained support for multi-source applications. The basic functionality worked great for individual applications, but in the case of Application Sets Argo CD Image Updater could not locate the type of each application (chart/kustomize/manifest) from the resource specification.
Now Argo CD Image Updater detects the type of each application from the status field of the resource, allowing you to automatically update images even if you employ Application Sets in your organization.
Thanks Jason Parraga (Stack AV) for implementing this feature.
Improved release process and unit testing
As promised in the previous release, there were several other internal changes in the project in areas of integration testing and better contributor experience. Even though these changes do not correspond to use-visible features, they are crucial for helping newcomers to the project and accepting new features. We are always looking for ways to attract contributors and making the developer experience an easy process is always a constant goal for us.
Multiple people were involved in this effort. See all changes in the release notes.
Where to report issues with the release
If you would like to contribute new features to Argo CD Image Updater, please submit a pull request as usual.
If you find any issues with the release please find us on the #argo-cd-image-updater channel in the CNCF Slack instance. If you are interested in becoming a maintainer then please contact us in the #argo-cd-contributors channel
Happy deployments!
Photo by Joshua Bayliss on Unsplash