Skip to content

Add a release workflow #9

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

Merged
merged 20 commits into from
Sep 24, 2021
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -73,3 +73,15 @@ jobs:
nexus_password: ${{ secrets.SONATYPE_PASSWORD }}
maven_profiles: sign-source-javadoc
directory: java

publish-go:
name: Create go/* tag
needs: create-release
runs-on: ubuntu-latest
steps:
- name: Create go/* tag
Copy link
Member Author

Choose a reason for hiding this comment

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

Even though it's trivial, I suggest we factor this out into an action too. That way we keep symmetry with the other publish jobs, and we also have a single lever we can move if we need to make cross-project modifications about how Go packages are released (such as publishing binaries etc.)

Copy link
Contributor

Choose a reason for hiding this comment

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

Agree, but I'd prefer to extract it after we're sure it works. It's easier to iterate that way.

Copy link
Member Author

Choose a reason for hiding this comment

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

Agree, but I'd prefer to extract it after we're sure it works. It's easier to iterate that way.

Mmmyeah. Remember how hard these are to test though - really the only way to test it is to run it and make a release. If we have it in a separate action we can unit test that at least, which gives us a bit more confidence when we bolt the whole thing together.

I've run out of time today but I can do this tomorrow.

run: |-
git config user.name "cukebot"
git config user.email "[email protected]"
git tag "go/${{ steps.create-release.outputs.version }}"
Copy link
Member Author

Choose a reason for hiding this comment

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

We could also use the https://github.com/cucumber-actions/versions action as a prior step in this workflow.

Or, if we factor out our own action for this we can make it self-sufficient about looking up the version.

git push --tags