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

Upgrading container image tags - hold feature #1132

Open
alexellis opened this issue Nov 6, 2024 · 1 comment · May be fixed by #1135
Open

Upgrading container image tags - hold feature #1132

alexellis opened this issue Nov 6, 2024 · 1 comment · May be fixed by #1135

Comments

@alexellis
Copy link
Owner

alexellis commented Nov 6, 2024

Expected Behaviour

I want some container images to be updated, and others to be pinned.

i.e. postgres:16 should stay at 16, not go to 17 when it happens to be available.

Current Behaviour

When a specific container image is actually wanted, even if newer ones are available, it gets upgraded anyway.

Possible Solution

A new file adjacent to the values.yaml with some convention for its name could be read and used to know to ignore that YAML path / selector / image.

Given the following, you may want to have one upgrade, and the other hold, in which case you need the full path to the image tag.

psql-1:
  image: postgres:16

psql-backup:
  image: postgres:16

But more likely the image only appears once, and only needs one version, so perhaps the image itself could be specified.

psql:
  image: postgres:16

hold.txt - specifies path in YAML to field to hold one per line

psql.image

hold.txt - specifies the specific source tag to ignore one per line

postgres:16

hold.yaml - specifies the same format 1:1 as the values.yaml, and the presence of anything in it means it's ignored:

psql:
  image: postgres:16

Steps to Reproduce (for bugs)

  1. Save the values.yaml sample above
  2. Use the sample above and run arkade chart upgrade

See it upgraded from 16 to 17

Context

We are maintaining postgresql for certain charts with images that do need updating regularly mixed with ones which do not like Postgresql, and this has become tricky to manage.

@rgee0
Copy link
Contributor

rgee0 commented Nov 6, 2024

I'd favour the concept behind the psql.image. The question I have around this is what other attributes are we likely to want to hold? If its just the image then the reducing the redundant information in hold will improve usability.

Naming convention ought to be that it follows the filename passed by -f suffixed with .hold.

@rgee0 rgee0 linked a pull request Nov 9, 2024 that will close this issue
12 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants