You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
main - Our main dev branch, a default target for all changes; this represents the "next" version of BRO.
release/v[0-9]+.0 - Release specific branch correlated to a Rancher Minor version.
release/v[0-9]+.[0-9]+.[0-9]+ - A patch release specific branch; used rarely to create patch release of a specific minor.
Note: the release branches above represent a format, not specific branches. However, only the listed branches, and one's matching the patterns, will be used to generate head builds.
Release Tags
When a release is generated for each branch, the release will happen simultaneously on two tags. The first tag being a "static tag" matching the branch at that commit in time (i.e. {branchName}-{commitSHA}), the other a "rolling tag" matching the newest of that branch (i.e. head).
For the main branch we will generate a static tag of {branchName}-{commitSHA} and a rolling tag of head.
On each release branch, we will generate a static tag like: {branchName}-head-{commitSHA} and a rolling tag of {branchName}-head.
Any branches outside of these will be ignored and not have automatic releases built.
CI and Script changes
Review the existing: scripts/version - Can this be re-used/re-factored for our needs?
Add a new workflow just for head-releases; to not complicate the existing publish.yaml workflow.
Consider adding a new script to handle "Find previous release tag on current branch matching expected format"
Investigate best method to handle multiple tags being built (both goreleaser and container images)
Consider if we care about auto-changelogs on these head releases
The text was updated successfully, but these errors were encountered:
This is a tracking issue to follow issue we noticed here: #562
This issue is follow up on this part:
I will document for us a roadmap to get our CI fully embracing the new branching strategy. That way we will have proper head builds for release branches and main - built with both a static tag and a rolling -head tag.
Possible branches:
main
- Our main dev branch, a default target for all changes; this represents the "next" version of BRO.release/v[0-9]+.0
- Release specific branch correlated to a Rancher Minor version.release/v[0-9]+.[0-9]+.[0-9]+
- A patch release specific branch; used rarely to create patch release of a specific minor.Release Tags
When a release is generated for each branch, the release will happen simultaneously on two tags. The first tag being a "static tag" matching the branch at that commit in time (i.e.
{branchName}-{commitSHA}
), the other a "rolling tag" matching the newest of that branch (i.e.head
).For the
main
branch we will generate a static tag of{branchName}-{commitSHA}
and a rolling tag ofhead
.On each release branch, we will generate a static tag like:
{branchName}-head-{commitSHA}
and a rolling tag of{branchName}-head
.Any branches outside of these will be ignored and not have automatic releases built.
CI and Script changes
scripts/version
- Can this be re-used/re-factored for our needs?head-releases
; to not complicate the existingpublish.yaml
workflow.The text was updated successfully, but these errors were encountered: