-
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 script #636
add release script #636
Conversation
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #636 +/- ##
=======================================
Coverage 83.45% 83.46%
=======================================
Files 75 75
Lines 16919 16919
Branches 16919 16919
=======================================
+ Hits 14120 14121 +1
+ Misses 2145 2143 -2
- Partials 654 655 +1 ☔ View full report in Codecov by Sentry. |
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.
Do we need to update the PR template to say to include the various feat, fix, doc etc things?
| replace(from="0)", to="0])")\ | ||
| replace(from="1)", to="1])")\ | ||
| replace(from="2)", to="2])")\ | ||
| replace(from="3)", to="3])")\ | ||
| replace(from="4)", to="4])")\ | ||
| replace(from="5)", to="5])")\ | ||
| replace(from="6)", to="6])")\ | ||
| replace(from="7)", to="7])")\ | ||
| replace(from="8)", to="8])")\ | ||
| replace(from="9)", to="9])") }}\ |
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.
FYI this is a bit of a gross hack - I think we can fix this in the future with a hook that just does some regex prior to this
add release script to start automating our releases with
cargo-release
andgit-cliff
. the main release script is./release.sh
with rather straightforward usage. we usecargo-release
to handle some of theCargo.toml
updates and trigger git-cliff, but otherwise the script just manually uses cargo/git to publish the release and tag itthe release flow will be the following:
main
branch, checkout a new release branch (likeprepare 0.x.y
)./release 0.x.y
to do the 'prepare' phase of generating a changelog, updating readme etc.a. the tool will validate that you're on a release branch, generate the changelog, and make a commit and (optionally) open a PR (cargo-release is used to update the versions correctly and git-cliff is used as a hook in cargo-release to generate the changelog)
b. then the only main action is just making minor CHANGELOG changes and updating + merging the PR
main
branch with prepare branch merged, run:./release.sh
a. the tool will publish any unpublished version (e.g. if 0.6.0 is latest on crates.io and the prepare PR bumps to 0.6.1 then the tool will do the release for
delta_kernel
anddelta_kernel_derive
, add a git tag, and push the tag)b. NOTE: this is currently done manually but could leverage cargo-release in the future