-
Notifications
You must be signed in to change notification settings - Fork 323
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
All timestamped images push to Docker Hub on merge to main #759
Comments
@princerachit as a heads up, I added this to our improvements epic. |
I think this has something to do with combine, although the chunks haven't changed, for some reason combine output is a new image |
This behaviour of creation of a new image is tied with dazzle's combine step. And digest is created here from above: Since this is a new image there is no way to distinguish it with existing image. We can change this behaviour of new image creation in two steps:
However, this would still not solve us the problem of multiple tags. We would need to write scripts in our action to NOT tag an image with new timestamp if it was not updated in say last IMO this is complicated and does not benefit us compare to the effort we put, the reason is:
I suggest that we should rather have an action which deletes old image tags from GAR to reduce the time spent in (3) rd point above |
Hi @princerachit , please avoid this issue, I need to research what you shared and dig in more to better understand. |
Moved to blocked for now and assigning myself. |
I am going to close this for now. I've changed our main build, so that it authenticates with GAR (again) when pushing to Docker Hub, to avoid the 1h timeout. |
Bug description
Given this action run
When we inspect the images pushed we push to DockerHub
Then we expect full, and anything depending on it to change (because
rust
chunk is part offull
combination)and we expect
workspace-rust
image to have changed (because the chunk changed)and we expect other images to not have changed (because they do not depend on rust or full) <-- this is the issue, unexpected images were pushed.
Why is this an issue? It wastes time and storage to upload images to Docker Hub which have not really changed.
Steps to reproduce
Run the merge to main action
Expected output
Ideally, only images which have changed (because we cache in GAR) will be uploaded to Docker Hub.
Why are we unnecessarily pushing images to Docker Hub when the content hasn't changed? How can we do better?
Refer to the Anything Else section (below) for supporting details.
Example repository
n/a
Anything else?
This shows two images are the same, but the digest's vary, and well they both exist in Docker Hub.
I'm not sure if this is something we'll have to live with, if there's an improvement we should make to our actions (like limit when we run combine), or if its a change we should make in dazzle for combine itself.
The text was updated successfully, but these errors were encountered: