-
Notifications
You must be signed in to change notification settings - Fork 55
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
Add release automation on tag push #876
Conversation
c8bb322
to
4a8cdee
Compare
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 noticed the test release did not have the release version in the artifacts. Has that been resolved?
7ae04c0
to
edb0367
Compare
Thanks for the catch. Looks like you can't refer to GH environment variables within the same step that they're assigned. Fixed that up by just using a local variable. |
409de06
to
a719b65
Compare
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.
115d87a
to
91b925f
Compare
91b925f
to
7d7a6a7
Compare
Moved all binary compiling logic to a separate script and created a Makefile target for |
7d7a6a7
to
574e321
Compare
a86d1de
to
2111592
Compare
Poorly-handled merge conflicts, sorry about that x.x |
e147f4a
to
1d8f237
Compare
Signed-off-by: David Son <davbson@amazon.com>
1d8f237
to
3c0db7f
Compare
Issue #, if available:
#447
Description of changes:
Created a new workflow for automating part of the release process. On tag push, it will test the build on AMD64, create the binaries + sha256 checksums, and create a draft release with a changelog. Note that testing and building are run in parallel, which was an intentional design choice, but if we feel that the tests should pass before building the binaries, that can be changed.
ARM64 releases must still be created manually. Technically we could build the binaries with ARM64 here anyway but it would be considered poor practice to test and build in separate environments. (Still waiting for GH Actions to natively support ARM64 :v)
Testing performed:
I pushed a tag and ensured the workflow passed. You can see it running successfully here. The workflow was modified to include a THIRD_PARTY_LICENSES file, but otherwise is identical to the one in this PR. The workflow was triggered with the following:
The created release can be seen here (release will be deleted after PR is merged). Note that the changelog is empty. My guess is that this is due to previous testing with other tags making GitHub erroneously believe the last release was the tag previously pushed and deleted. This should not be an issue for official releases, but if a release needs to be modified for whatever reason, please bear in mind it may generate an empty changelog, so we should ensure we keep the original generated changelog.
To be explicit, this is not an official v999.999.999 release :P
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.