-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
[#29697] Add prism artifact building workflow. #31369
Conversation
R: @kennknowles |
Stopping reviewer notifications for this pull request: review requested by someone other than the bot, ceding control |
thanks. The refactoring makes sense as there are more and more fields in the action which is inconvenient. Just wondering if there is a way to keep the descriptions of field concise. Currently the dropdown is very long. (It's fine to keep as is for now) |
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.
thanks, had two optional comments.
Do we plan to deliver prism binaries for Beam 2.57.0 (release cut soon)
Yup. That's why I was working on this all last week, to figure out and solve problems before we ran into them in the release. It's easier to get the SDK downloading step working with a proper release having the artifacts. That half is for 2.58.0 though, and not 2.57.0. |
Unfortunately I tried a few things for this and nothing made it better. We're ultimately going to need to keep the release guide documentation (which is in a later PR), paired with this and link to the documentation here to reduce the visual noise. TBH, we'd probably move the initiation for this action to a cooy/pastable command line to do the workflow dispatch. See https://cli.github.com/manual/gh_workflow_run |
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.
If Want LGTM from the release manager then it's good to add milestone to this PR. Otherwise this LGTM and feel free to merge
Since Kenn's going to affected by it, hopefully he'll review it first! |
Merging in, but I'm still going to be working with @kennknowles to make sure this is iterated on for completeness. |
Adds a build & stage to RC creation to release signed hashed and zipped prism binaries to a release.
Currently requires a release with the RC tag to exist, actually straightening out the logic is best handled in a separate PR, as this change is sufficiently complex as is without including the clobber protection logic if targetting an already published release.
Changes the workflow dispatch to us a JSON object instead of individual string fields. The dialog now looks like this:
Not an ideal experience, but we hit the 10 input limit otherwise.
The action syncs down the Dev Apache SVN repo, builds prism binaries for ARM64, AMD64 for Linux, Darwin (osx), and Windows, zipping up the binary, creating signature and sha512 hash files.
These are uploaded to a Github prerelease for the RC tag, like so: https://github.com/apache/beam/releases/tag/untagged-819e4037252d95b05550
Finally, the same artifacts are committed to the Dev Apache repository for final publishing.
Signature and hash are not included in the Zip so the archive doesn't need to be decompressed before being able to validate it.
TODO in a subsequent PR:
automatically create a draft prerelease release for the tag if one doesn't exist yet.
Update existing draft GH release for the release version with the new RC tag.
Fail early if a published release has already gone out for the version to avoid clobbering an existing non-RC GH release.
Updating the Release Manager guide.
Part of #29697
Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:
addresses #123
), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, commentfixes #<ISSUE NUMBER>
instead.CHANGES.md
with noteworthy changes.See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)
See CI.md for more information about GitHub Actions CI or the workflows README to see a list of phrases to trigger workflows.