-
Notifications
You must be signed in to change notification settings - Fork 431
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
GHA release workflow, refactor PR and Daily workflows #1968
Conversation
c453dee
to
abda4e1
Compare
…o bandish/ci_release
This reverts commit 53b3511. GHA is very picky about where workflow files live
…ish-docker-images job in release 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.
Blocking because of my question about secrets, otherwise LGTM and we can ship and fix
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.
Mostly LGTM. Left 1 minor comment, and also confused by Daniel's points on python 3.9 and the push: false. Once this is approved, we can:
- update settings to remove old required tests
- merge this in
- update required tests
OR
- force merge this in
- update required tests
Former is has a small window of tests are not required so it's not ideal, but latter uses force merging which is kinda nasty. Will let you pick whatever you want
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. There's enough moving pieces though that I would not merge until @dakinggg also approves
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, lets see if it works!
What does this PR do?
Adds a
release.yaml
pipeline which can be triggered by the creation of a properly formatted tag (beginning with a 'v') or manually by repo admins. The pipeline does the following:push
of a tag. Otherwise builds and pushes packages to Test PyPi.push
of a tag, skipped otherwise. Production Docker build and push can be performed independently by triggering therelease-docker
pipeline manually.Adds a
release-docker.yaml
pipeline which builds and pushes production Docker images. This flow can be triggered manually by repo adminsAdds
coverage
,pytest-cpu
,pytest-gpu
anddocker-configure-build-push
reusable workflowsAdds/refactors PR
pr-docker
,pr-cpu
,pr-gpu
pipelines to use reusable workflowsRefacxtors
pytest-daily
todaily
pipeline and uses reusable workflowsFuture Work (addressed by future PRs)
daily
to build Docker images and run tests on staged imagesWhat issue(s) does this change relate to?
Closes CO-1186
Testing
All workflows were tested manually by adding the
pull_request
trigger to all workflows and running in GHA. This trigger has been removed from thedaily
,release-docker
andrelease
workflows. Thepr-gpu
workflow has been changed to use thepull_request_target
workflow since it needs to provide secrets to PR's from forked repos. Links to passing GHA runs for these workflows can be found below.pr-gpu
: https://github.com/mosaicml/composer/actions/runs/4199439168daily
: https://github.com/mosaicml/composer/actions/runs/4208510415release-docker
: https://github.com/mosaicml/composer/actions/runs/4208510424release
: https://github.com/mosaicml/composer/actions/runs/4210173449Before submitting
pre-commit
on your change? (see thepre-commit
section of prerequisites)