publish: dual S3 + PyPI publish on release (with GPU tests)#545
Merged
Conversation
On GitHub Release events, upload the full wheel matrix to the S3 production index (simple/ prefix) AND publish an sdist to PyPI. Previously these paths were mutually exclusive. - Add `pypi` and `release` routing flags to pr-flags job - Handle `release` event: set s3=true, pypi=true, release=true - Rewrite publish-dist to build and upload an sdist instead of downloading pre-built wheels, matching what PyPI hosts today - Extend auditwheel repair condition to also run for release events - Enable GPU validation (smoke test + unit tests) on releases - Add `release` as a workflow_dispatch publish_target option so a failed release can be re-triggered manually - Replace github.event_name checks with the release flag so manual dispatch with publish_target=release correctly targets production S3 (simple/) and PyPI Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
harrism
approved these changes
Mar 13, 2026
Contributor
harrism
left a comment
There was a problem hiding this comment.
Approve, but the combinations of release targets and options are a getting more complicated, do we need more documentation?
All checkout steps in publish.yml used github.ref (the "Use workflow from" branch) instead of inputs.branch (the "Branch to build" input). This caused workflow_dispatch runs to build from the wrong branch, producing packages with the dispatch branch's version (e.g. 0.5.0.dev0) instead of the target branch's version (e.g. 0.4.0). Add inputs.branch as a fallback before github.ref in all four checkout steps (pr-flags, fvdb-build, publish-dist, validate-unit-tests). For non-dispatch events the inputs context is empty so behavior is unchanged. Signed-off-by: Jonathan Swartz <jonathan@jswartz.info>
Contributor
Author
Agreed. I've made a new issue to fix that up |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
On GitHub Release events, upload the full wheel matrix to the S3 production index (simple/ prefix) AND publish an sdist to PyPI. Previously these paths were mutually exclusive.
pypiandreleaserouting flags to pr-flags jobreleaseevent: set s3=true, pypi=true, release=truereleaseas a workflow_dispatch publish_target option so a failed release can be re-triggered manually