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

Free space and repeatability for the Docker Hub workflow #36716

Merged
merged 7 commits into from
Dec 10, 2023

Conversation

soehms
Copy link
Member

@soehms soehms commented Nov 13, 2023

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 and develop I temporarily changed the tag names to 10.2.rc0t and developt 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

  • The title is concise, informative, and self-explanatory.
  • The description explains in detail what this PR is about.
  • I have linked a relevant issue or discussion.
  • I have created tests covering the changes.
  • I have updated the documentation accordingly.

⌛ Dependencies

@@ -7,106 +7,26 @@ on:
- 'develop'
push:
tags:
# Just create image on pushing a tag
# Create images on pushing a tag
- '*'
Copy link
Member

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.)

Copy link
Member Author

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!

Copy link
Member

@mkoeppe mkoeppe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@soehms
Copy link
Member Author

soehms commented Nov 15, 2023

LGTM

Thanks. For completeness here a scheduled workflow run.

@vbraun
Copy link
Member

vbraun commented Dec 6, 2023

Merge conflict

@soehms
Copy link
Member Author

soehms commented Dec 6, 2023

Merge conflict

I've no idea what did conflict (maybe the removed files). Anyway, I could merge automatically.

Copy link

github-actions bot commented Dec 6, 2023

Documentation preview for this PR (built with commit a1a32ab; changes) is ready! 🎉

@vbraun vbraun merged commit d4d5015 into sagemath:develop Dec 10, 2023
15 of 18 checks passed
@soehms soehms deleted the free_space_on_docker_hub_workflow branch December 11, 2023 18:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants