Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
change release flow so that moderators needs to merge rather than che… (
#2494) * change release flow so that moderators needs to merge rather than cherry-picking for releasing * remove text from BRANCHING-MODEL.md. rename "hf" to "hotfix" in hotfix branch name * change flow to allow for a faster release * re-add hotfix flow
- Loading branch information
1 parent
e7c0ed2
commit 2ae99c6
Showing
4 changed files
with
73 additions
and
40 deletions.
There are no files selected for viewing
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
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
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,68 +1,95 @@ | ||
@startuml | ||
!pragma teoz true | ||
|
||
== Release == | ||
== Initial release == | ||
participant "Dev branch" as devbranch order 10 #LightBlue | ||
participant "RC branch" as rcbranch order 20 #YellowGreen | ||
participant "Release branch" as rlsbranch order 20 #YellowGreen | ||
participant "Master branch" as master order 30 #99FF99 | ||
participant "Maintainance branch" as maintainbranch order 40 #YellowGreen | ||
participant "Hotfix branch" as hotbranch order 40 #DarkSalmon | ||
|
||
{startrc} devbranch -> rcbranch ++ #YellowGreen: Create branch release/x.y.0 | ||
{startrc} devbranch -> rlsbranch ++ #YellowGreen: Create branch "release/1.0.0" | ||
|
||
|
||
note left of devbranch | ||
Evolutions | ||
end note | ||
|
||
|
||
rcbranch <- devbranch: Cherry-pick bug fixes | ||
rcbranch <- devbranch: Cherry-pick more bug fixes | ||
note right of rlsbranch | ||
Bug fixes | ||
end note | ||
|
||
rlsbranch --> devbranch: Contributors merge bug fixes using a separate PR | ||
|
||
note right of rcbranch | ||
- Bug fixes | ||
- Tag "x.y.0-rcn" on RC branch | ||
- Push "x.y.0-rcn" to DockerHub | ||
end note | ||
|
||
|
||
rcbranch -> master: Merge | ||
rlsbranch -> master: Merge | ||
note right of master | ||
Official release | ||
- Tag "x.y.0" | ||
- Push "x.y.0" to DockerHub | ||
- Tag "1.0.0" | ||
- Push "1.0.0" to DockerHub | ||
end note | ||
|
||
{endrc} rcbranch --> devbranch --: Release done | ||
== Release maintainance == | ||
master -> maintainbranch ++ #YellowGreen: Create branch "release/1.0.x" | ||
|
||
devbranch -> rcbranch: Create branch release/x.(y+1).0 | ||
note left of devbranch | ||
Increase x if case of | ||
major breaking change | ||
note right of maintainbranch | ||
Bug fixes | ||
end note | ||
|
||
maintainbranch --> devbranch: Contributors merge bug fixes using a separate PR | ||
|
||
... ... | ||
{startrc} <-> {endrc}: 4-8 weeks | ||
|
||
maintainbranch -> master: Merge | ||
note right of master | ||
Official release | ||
- Tag "1.0.1" | ||
- Push "1.0.1" to DockerHub | ||
end note | ||
|
||
maintainbranch --> devbranch: Contributors merge bug fixes using a separate PR | ||
|
||
maintainbranch -> master: Merge | ||
note right of master | ||
Official release | ||
- Tag "1.0.2" | ||
- Push "1.0.2" to DockerHub | ||
end note | ||
|
||
== Hotfix == | ||
|
||
master -> hotbranch ++ #DarkSalmon: Create short-lived fix branch x.y.z | ||
master -> hotbranch ++ #DarkSalmon: Create short-lived fix branch "hotfix/1.0.3" | ||
note left | ||
z starts at 1. Increase for each hotfix. | ||
If in need of an urgent fix | ||
and PR have already been merged to release/1.0.x | ||
since 1.0.2 release | ||
end note | ||
|
||
note right of hotbranch | ||
Severe bug | ||
to be corrected | ||
end note | ||
hotbranch <- devbranch --: Merge hotfix per PR | ||
hotbranch --> master: Cherry-pick | ||
|
||
hotbranch -> maintainbranch: Merge | ||
hotbranch -> devbranch --: Merge (Optional) | ||
hotbranch -> master --: Merge | ||
note right of master | ||
Official release | ||
- Tag "x.y.z" on master | ||
- Push "x.y.z" to DockerHub | ||
- Tag "1.0.3" | ||
- Push "1.0.3" to DockerHub | ||
end note | ||
hotbranch --> rcbranch: Cherry-pick | ||
|
||
== Next release == | ||
{endrc} devbranch -> rlsbranch: Create branch\n "release/1.1.0" | ||
note left of devbranch | ||
Or release/2.0.0 in case of | ||
major breaking change | ||
end note | ||
|
||
|
||
... ... | ||
{startrc} <-> {endrc}: \n4-8 weeks | ||
|
||
|
||
@enduml |