-
-
Notifications
You must be signed in to change notification settings - Fork 517
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
Free space and repeatability for the Docker Hub workflow #36716
Free space and repeatability for the Docker Hub workflow #36716
Conversation
@@ -7,106 +7,26 @@ on: | |||
- 'develop' | |||
push: | |||
tags: | |||
# Just create image on pushing a tag | |||
# Create images on pushing a tag | |||
- '*' |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be good to use a pattern that matches our release tags only, as we do in https://github.com/sagemath/sage/blob/develop/.github/workflows/dist.yml#L6
(I frequently push other tags to my repository for triggering CI runs, and currently this triggers a failing Docker Hub workflow.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it would be good to use a pattern that matches our release tags only, as we do in https://github.com/sagemath/sage/blob/develop/.github/workflows/dist.yml#L6
(I frequently push other tags to my repository for triggering CI runs, and currently this triggers a failing Docker Hub workflow.)
Done!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Thanks. For completeness here a scheduled workflow run. |
Merge conflict |
I've no idea what did conflict (maybe the removed files). Anyway, I could merge automatically. |
Documentation preview for this PR (built with commit a1a32ab; changes) is ready! 🎉 |
This PR implements the suggested changes of #36385. Furthermore, it enables the workflow to detect whether the current tag has already been pushed to Docker Hub. Thus, if the workflow run on pushing the tag fails due to a timeout this gives us the possibility to have a scheduler try for a second or third time (I add a cron for Tuesday and Thursday). Such timeouts (after 6 hours for a job) seem to happen sporadically, even though each of the both jobs usually succeeds in less than 4 hours.
I also improve the code structure be refactoring to a reusable workflow
docker_hub.yml
.I tested the changes in my fork repository. To prevent from overriding the existing tags
10.2.rc0
anddevelop
I temporarily changed the tag names to10.2.rc0t
anddevelopt
for the test runs. Here is a successful run that created these tags on Docker Hub. To avoid confusion I've removed them again. A test-run on existing tags which should skip the subsequent steps is this one.FYI: I also updated the README on Docker Hub. Please have a look and make corrections / additions there if necessary.
📝 Checklist
⌛ Dependencies