Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

It seems to be ignoring the settings | digest - mutable tags latest #915

Open
tebaly opened this issue Nov 5, 2024 · 2 comments
Open

It seems to be ignoring the settings | digest - mutable tags latest #915

tebaly opened this issue Nov 5, 2024 · 2 comments
Labels
bug Something isn't working

Comments

@tebaly
Copy link

tebaly commented Nov 5, 2024

Describe the bug
It seems to be ignoring the settings.

To Reproduce

...
  annotations:
    argocd-image-updater.argoproj.io/update-strategy: digest
    argocd-image-updater.argoproj.io/image-list: >
      prod=registry.gitlab.com/image:latest,
      dev=registry.gitlab.com/image:development,

Expected behavior
It should be updated individually when a new image for a tag is released. But it updates everything where there is an image registry.gitlab.com/image (latest and development) simultaneously. regardless of the tag with which the new image appeared in the repository. It also substitutes the image without a tag
registry.gitlab.com/image:latest -> registry.gitlab.com/image@sha256... (without a tag latest)

Additional context

apiVersion: argoproj.io/v1alpha1
kind: Application
...
 spec:
  source:
    path: kustomize

Version

  - name: argocd-image-updater
    repository: https://argoproj.github.io/argo-helm
    version: v0.11.0

Logs

time="2024-11-05T11:18:51Z" level=info msg="Starting image update cycle, considering 1 annotated application(s) for update"
time="2024-11-05T11:18:53Z" level=info msg="Setting new image to registry.gitlab.com/<image>@sha256:86a1****" alias=prod application=<appname> image_name=<appname>/<image> image_tag="sha256:7f08****" registry=registry.gitlab.com
time="2024-11-05T11:18:53Z" level=info msg="Successfully updated image 'registry.gitlab.com/<image>@sha256:7f08****' to 'registry.gitlab.com/<image>@sha256:86a1****', but pending spec update (dry run=false)" alias=prod application=<appname> image_name=<appname>/<image> image_tag="sha256:7f08****" registry=registry.gitlab.com
time="2024-11-05T11:18:58Z" level=info msg="Committing 1 parameter update(s) for application <appname>" application=<appname>
time="2024-11-05T11:18:58Z" level=info msg="Successfully updated the live application spec" application=<appname>
time="2024-11-05T11:18:58Z" level=info msg="Processing results: applications=1 images_considered=5 images_skipped=1 images_updated=1 errors=0"
@tebaly tebaly added the bug Something isn't working label Nov 5, 2024
@tebaly
Copy link
Author

tebaly commented Nov 8, 2024

What is the current behavior: it tracks tag changes relatively correctly. But for me the behavior was not obvious

  • it tracks TAG changes in the image repository registry.gitlab.com/<image>:<tag>
  • it updates ALL pods/containers that have the image name specified registry.gitlab.com/<image>
  • it eventually IGNORES the tag in the pod/container description (:<tag> ignored)

And as a result, if you specify two images with two tags for tracking, or one image with one tag - it will update all pods/containers anyway registry.gitlab.com/<image>[:<tag> ignored]

@tebaly
Copy link
Author

tebaly commented Nov 12, 2024

Now I started to understand... Maybe you need to clarify the documentation

  • as a minimum, the digest strategy basically ignores the tags specified in the manifests, since the update occurs through changing the image version parameter in the application parameters in ArgoCD level
  • to be able to split the update, you need to release different images for dev and prod, not different tags of the same image
  • image-updater only takes the image tag into account when tracking new images in the repository. When a new immutable image of the tracked tag appears, it will update all manifests, ignoring the tag.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

1 participant