-
Notifications
You must be signed in to change notification settings - Fork 24
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: adjust release branches #52
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
commit-msg hook will run commitlint on the incoming commit message and make sure it conforms to the preset.
Uses angular commit message format by default.
Needed due to introduction of husky dependency.
Default behavior is DO NOT install git-hooks when running in a CI environment.
The environment variable is the more sensible approach that I should have taken at the outset.
* adding typescript tests
If it fails, what's the point of proceeding?
Do it after the individual validation. Can't proceed if the fully assembled spec is invalid.
Adds git and changelog plugs. Switches commit-analyzer to use conventionalcommit instead of angular.
commit-msg hook will run commitlint on the incoming commit message and make sure it conforms to the preset.
Uses angular commit message format by default.
Needed due to introduction of husky dependency.
Default behavior is DO NOT install git-hooks when running in a CI environment.
The environment variable is the more sensible approach that I should have taken at the outset.
If it fails, what's the point of proceeding?
Adds git and changelog plugs. Switches commit-analyzer to use conventionalcommit instead of angular.
# Conflicts: # .github/workflows/release-github.yml
Will have a `v.0.x` branch that starts from the current v0.8.0 tag. Make a new `v1.x` tag from wherever the bumblebee branch is.
🎉 This PR is included in version 0.9.0-next.1 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
🎉 This PR is included in version 0.9.0-next.1 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Pre v1.0 (time of writing)
Updates the release config to care about these branches:
While still in a pre 1.0 release, the
main
branch will contain the current aardvark v0.x code andnext
will have any new v0.x features or fixes.For releases to the current v0.x production code, developers will branch from
next
, do their feature or bug fix work, and make a pull request back to thenext
branch. On approval, their commits need to be squashed and merged. ADMINS, make sure the title of the merge follows conventional commit spec.Work for the future bumblebee (v1.x) milestone will happen on the
next-major
branch which will necessarily diverge frommain
andnext
.Someone needs to do a breaking change PR that starts from
main
and targets thenext-major
branch. Developers will branch fromnext-major
, and make features/fixes to be merged back tonext-major
.Meanwhile, regular development on the v0.x release can continue from
main
andnext
.Feature and fix work on v0.x must be ported (cherry-picked) to
next-major
if those new features and fixes are meant to be carried into the next major release.v1.0.0 boundary
At this boundary, we will create a
v0.x
branch and tag from whatever the last v0.x version of firebolt exists onmain
at that point. This branch will support feature and bug fix releases to thev0.x
versions of firebolt.Post v1.0.0
Now the release job cares about these branches:
At this point, developers working on
v1.x
would simply follow the branch fromnext
merge tonext
workflow. As v1.x prereleases happen, consumers can try them.Working on v0.x maintenance releases
A developer would make a feature/fix branch from the
v0.x
branch and make a pull request back to that branch. After PR merge, someone would trigger a release andv0.x.x
would be released.Porting features/fixes across releases
TLDR; This often requires cherry-picking commits from one branch to another and resolving merge conflicts since release branches are out of sync by design. The semantic release gitbook has some fantastic info on this topic. Well worth a read if you want to understand more.