-
Notifications
You must be signed in to change notification settings - Fork 18
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
ci: add & configure release-please #586
Conversation
* rename * chore: bootstrap releases for path: .
@blt950 note that the errors are expected as I'm configuring the action and the manifest in one PR. I could split them out into separate ones though, if you'd like 🟢 first, but I've tested it locally and will fix-forward in the event of anything... strange. |
@thor I've taken a brief look. I've never used this before, so bear with me. I understand that this CI will make all commits into a Changes we need to do in our pipeline and habits:
Some control questions:
|
@blt950 Yup, that's right. Committed and released.
I'd challenge "very specific" and say a "specific" way, and even that is still optional as you can override previous commits.
You'd still need some human changelog, at least if you want to target users or humans.
Less administrative and duplicate work when releasing new versions, as you don't need to create releases manually. You get both GitHub Releases and tags. It works well whether you release often or if you want to bundle up multiple changes before releasing. It allows you to think of the changes in each of the changes and leave the versioning to something non-human. Less likely to give users update fatigue (if one believes in such a thing 😉). You get a gate for releases where you get to evaluate the changes ahead of releasing them. You can edit the changes after having made them. You get to see all changes queued for a release in an overview. You get a prettily formatted set of release notes.
You're likely to release less frequently than if you automated the release mechanism entirely. You have to approve the release manually. There's always a pull request open. You have to know what the difference between
Like with most things, it's opt-in. Nothing breaks if you do it manually instead, should it fail or be unusual, or if you're feeling like it's Monday.
You use the override functionality described in its documentation. Or, you can ignore it and just add it to the release after the fact if you're releasing it with other things. 🤷
It's far easier to opt out of than most of our things, as you can ignore the PRs or remove the workflow. If you don't understand it, it won't do anything. It won't prevent you from doing anything if you don't know it's not there. However, if you do use it, you're making a release process arguably easier rather than harder. I'd at least argue that the amount of knowledge and style you know about and utilize when you release a new version should be codified rather than a bus factor of 1. I'd guess, at some point, it'll be removed because something else is more enticing or because it's not needed. Hard to say what the future will bring. Nothing depends on it, unlike |
Thanks for the info, let me think about this next time I do some fixes in CC so I've the right mindset. I'll follow up with a decision. |
Bump. We can always close this for the time being and leave the branch present. FWIW, besides the initial noise in the pull requests, it's possible to test and revert this if you'd like, or test it in a fork. |
Keep it open. I'm slowly trying to work on my habits to write "correct" commits for this, once I'm confident we can merge this in :) |
@thor Just follow up question:
|
@blt950 No worries.
That's right. It pulls it into its own "release-please--" branch, from which it creates the pull request.
Affirmative.
Affirmative. You can alter already-merged changes, or you can override the version manually. |
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.
Adds release-please by configuring the release-please GitHub Action.
The action provides a continually up-to-date PR that can be merged when the
main
branch is ready to be released as a new version. Through conventional commit messages it'll determine what the next version number is.The release-please explains what this does and how it is intended to be used.