v0.3.0
Release description
The major new feature for this release is the introduction of update strategies:
- The strategy
latestwill evaluate the creation date and chose the latest created tag matching the version constraint for update - The strategy
namewill pick the last found tag according to alphabet sorting - The strategy
semver(the default) will pick the latest allowed version according to version constraint
Also, this release introduces a simple in-memory cache for tag meta data and the code has seen some refactoring. Please see below for breaking changes and a complete list of things that have been done.
Upgrade notes (no really, you MUST read this)
- Syntax change for running:
argocd-image-updater run [flags]instead ofargocd-image-updater [flags]has now to be used - Attention: Helm annotation names have changed from
<image_alias>.image-{name,tag,spec}to<image_alias>.helm.image-{name,tag,spec} - Specifying target image name for Kustomize applications now require their own annotation, the image alias is not re-used for this anymore
Bug fixes
- fix: Possible race while waiting for app updating goroutines
New features
- feat: Allow setting the upgrade strategy for images via annotation
Other changes
- refactor: Change run behaviour by providing
runandversioncommands - enhancement: Provide a
versioncommand to print out version information - enhancement: Allow storing metadata for image tags
- enhancement: Fetch tag metadata along with tags and store creation timestamp
- enhancement: Introduce simple cache for immutable metadata
- refactor: Make version constraints parametrizable
- enhancement: Allow sorting of tags by semver, date or name
- refactor: Give annotation names their own namespace-like living room
- enhancement: Kustomize target image name got its own annotation