Skip to content
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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open

Create weekly test releases #310

wants to merge 1 commit into from

Conversation

mikelalcon
Copy link
Collaborator

@mikelalcon mikelalcon commented Jan 23, 2025

Fixes #275

Fixes #275

Change-Id: Id7c7716d0b4dcc3f75d872d9945fd43d056df1ca
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

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.

Copy link
Collaborator Author

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.

Copy link

@alexeagle alexeagle left a 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)"

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3

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

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Compile standalone binary
2 participants