-
Notifications
You must be signed in to change notification settings - Fork 266
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
Create weekly test releases #310
base: master
Are you sure you want to change the base?
Conversation
Fixes #275 Change-Id: Id7c7716d0b4dcc3f75d872d9945fd43d056df1ca
2d6a5c9
to
dea02fc
Compare
release_name: Release v${{ steps.date.outputs.date }} | ||
body: | | ||
Automated weekly test release snapshot from master branch. | ||
This is a test release, version compatibility or correctness |
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.
what about publishing binaries for non-test releases?
You might want to look at how we do this for Bazel ruleset releases. There is one workflow for "a tag was created"
https://github.com/bazel-contrib/rules-template/blob/main/.github/workflows/release.yml
which covers tags applied by engineers when we want to release.
Then there's a separate cron-scheduled "make sure we release sometimes" https://github.com/bazel-contrib/rules-template/blob/main/.github/workflows/tag.yaml which triggers the other one.
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.
For now "test" releases is what we can commit to. Hopefully over time we can have more supported releases.
Thanks for the pointers! Some folks in Google also gave feedback on the 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.
Thank you for working on this!
|
||
- name: Get current date | ||
id: date | ||
run: echo "::set-output name=date::$(date +%Y%m%d)" |
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.
this is deprecated https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
they want you to use GITHUB_OUTPUT instead
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout code | ||
uses: actions/checkout@v3 |
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.
nit: there is a v4 - since this is a new workflow you probably want the latest of the deps
with: | ||
upload_url: ${{ steps.create_release.outputs.upload_url }} | ||
asset_path: bazel-bin/java/com/google/copybara/copybara_deploy.jar | ||
asset_name: copybara_deploy.jar |
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.
nit: it would be nice to also publish a checksum of the file. That way users can vendor the checksum when they take the dependency (following https://en.wikipedia.org/wiki/Trust_on_first_use principle)
As you probably know, Bazel will require the checksum to cache this jar file. Users could compute one themselves of course.
Fixes #275