AaronErhardt / tuxedo-rs

Rust libraries for interacting with hardware from TUXEDO Computers
GNU General Public License v2.0
138 stars 10 forks source link

ci: automatic release management #33

Closed mrcjkb closed 11 months ago

mrcjkb commented 11 months ago

Closes #30

Will create release PRs, bumping the version and adding changelog entries, based on conventional commits.

Currently, conventional commits are not enforced. I haven't yet found a way to do so in a way that works nicely with the release-please workflow. If people contribute with non-conventional commits, you can make the PR title CC compliant, and squash merge.

mrcjkb commented 11 months ago

Marking as draft again. There is still an issue with the workflow failing because it expects tags and then not creating a release PR.

mrcjkb commented 11 months ago

I had to revert back to giving each crate its own version, because release-please doesn't seem to support workspace.version.

See also: https://github.com/googleapis/release-please/issues/2111

Here's an example of what a release PR looks like: https://github.com/mrcjkb/tuxedo-rs/pull/3

It currently updates the changelog in each crate, but I think we can live with that until release-please supports workspace.version.

mrcjkb commented 11 months ago

Looks good. Anything left to do before merging?

Btw. for the future, we could consider adding automatic crates.io releases.

I think it's good to merge now. Might need some refinement, but I can do that in a follow-up.

crates.io releases sounds like a good idea too 😃

AaronErhardt commented 11 months ago

Thanks!