dask-kubernetes
dask-kubernetes copied to clipboard
Operator docker image didn't get latest tag on release
When 2022.5.1
was released the ghcr.io/dask/dask-kubernetes-operator:2022.5.1
Docker image was built and published by Chartpress. However ghcr.io/dask/dask-kubernetes-operator:latest
wasn't updated and continued to point to the previous release.
I've manually tagged latest
and updated the registry so everything is ok now, but we need to fix this for the next release.
I'm guessing something needs changing in the Chartpress config to make this happen but looking at the config reference I can't immediately see what needs changing.
@consideratio could you point me in the right direction here?
Just released 2022.5.2
and manually tagged latest
again.
In the jupyterhub org, using chartpress to publish z2jh and binderhub, I wished for this initially (https://github.com/jupyterhub/chartpress/issues/94), but I'm not wishing for it any more. I think it could encourage various behaviours that makes things harder for everyone.
I consider for example someone using :latest
instead of a specified version then asking for help. They may even think that "well i started this container day X, which means it should be version Y" but failed to consider that they perhaps had a cached image or similar making they draw the wrong conclusion, and suddenly a bug thought to be fixed perhaps is considered possibly still around etc. It would cause some issues for users and maintainers of software if this happened.
Of course, there may be circumstances when you may wish to have :latest
that motivates development of a feature in chartpress to support pushing latest
anyhow. If so, the course of action would be to open an issue in chartpress, linking out to https://github.com/jupyterhub/chartpress/issues/94 for reference, and motivating the implementation of it. The alternative options, to not let chartpress do this part, is to for example use chartpress --list-images
and do docker tag <already built image:tag> <name:latest>
and then docker push <name:latest>
on each listed image.
Circling back here. I agree that a latest
tag isn't good practice.
The problem I'm having is that you can either install the operator via helm or via manifests. The helm chart gets the correct tag thanks to chartpress. However, the manifests still have ghcr.io/dask/dask-kubernetes-operator:latest
hardcoded.
So the other solution would be to automatically bump this version in the manifest during a release.