33This document details the high-level process of creating a Metal3 release, and
44the post-release actions required to add new release branches to the CI.
55
6- Note the [ TODO] ( #releasing-process-todo ) section in the end.
7-
86## Process
97
108High-level release process for a major/minor release. For patch releases, only
119release the relevant versions.
1210
13- ** NOTE** : Ironic-image (via upstream Ironic) has different release cadence as
14- Metal3 repos. It is not always possible to release them synced.
11+ ** NOTE** : [ Ironic-image] ( https://github.com/metal3-io/ironic-image ) (via
12+ upstream Ironic) and
13+ [ IrSO] ( https://github.com/metal3-io/ironic-standalone-operator ) (linked to
14+ Ironic-image releases) have different release cadence as CAPM3, BMO and IPAM
15+ repos.
1516
16- 1 . [ Release ironic-image] ( https://github.com/metal3-io/ironic-image/blob/main/docs/releasing.md )
17+ 1 . [ Release Ironic-image] ( https://github.com/metal3-io/ironic-image/blob/main/docs/releasing.md )
18+ 1 . [ Release IrSO] ( https://github.com/metal3-io/ironic-standalone-operator/blob/main/docs/releasing.md )
17191 . [ Release IPAM] ( https://github.com/metal3-io/ip-address-manager/blob/main/docs/releasing.md )
18201 . [ Release BMO] ( https://github.com/metal3-io/baremetal-operator/blob/main/docs/releasing.md )
19211 . [ Release CAPM3] ( https://github.com/metal3-io/cluster-api-provider-metal3/blob/main/docs/releasing.md )
20- 1 . [ Tag Mariadb image] ( #tag-mariadb-image )
21221 . [ Update Metal3 dev-env and CI to support new releases] ( #update-metal3-dev-env-and-ci-to-support-new-releases )
2223
2324** NOTE** : Always follow release documentation from the respective main branch.
2425Release documentation in release branches may be outdated.
2526
26- ## Tag Mariadb image
27-
28- After releasing ` v1.x.y ` version of CAPM3, create an annotated tag with ` capm3- `
29- prefix + release version in
30- [ mariadb-image] ( https://github.com/metal3-io/mariadb-image ) Github repository.
31- Origin points to ` metal3-io ` .
32-
33- For minor releases:
34-
35- ``` bash
36- git tag -s -a capm3-v1.x.y -m capm3-v1.x.y
37- git push origin capm3-v1.x.y
38- ```
39-
40- For patch releases:
41-
42- ``` bash
43- git tag -s -a capm3-v1.x.y -m capm3-v1.x.y [optional sha, or tag^{}]
44- git push origin capm3-v1.x.y
45- ```
46-
47- The last part should point to a previous patch. For example for tag ` v.1.x.2 ` :
48-
49- ``` bash
50- git tag -s -a capm3-v1.x.2 -m capm3-v1.x.2 capm3-v1.x.1^{}
51- ```
52-
53- After this, [ MariaDB] ( https://quay.io/repository/metal3-io/mariadb ) container
54- image will be built automatically with ` capm3-v1.x.y ` tag in Quay. Verify the
55- build is triggered, as often Quay has disabled the build trigger due build
56- failures or other reasons.
57-
58- If build is not triggered check:
59-
60- - Debug and retrigger [ workflow] ( https://github.com/metal3-io/mariadb-image/actions/runs/13174700659/job/36772849955 )
61- for building container images
62- - You can also try running the job in [ Jenkins] ( https://jenkins.nordix.org/view/Metal3/job/metal3_mariadb_container_image_building/ )
63-
6427## Update Metal3 dev-env and CI to support new releases
6528
6629If a new minor or major release was published, we need to make changes in
@@ -85,21 +48,27 @@ for periodics and PR jobs.
8548We also need to change project-infra keywords for required tests for some of
8649the repositories.
8750
88- [ Prior art] ( https://github.com/metal3-io/project-infra/pull/496 )
51+ Prior art - jobs:
52+
53+ - [ BMO] ( https://github.com/metal3-io/project-infra/pull/1000 )
54+ - [ IPAM] ( https://github.com/metal3-io/project-infra/pull/998 )
55+ - [ CAPM3] ( https://github.com/metal3-io/project-infra/pull/999 )
56+ - [ IrSO] ( https://github.com/metal3-io/project-infra/pull/1034 )
57+ - [ Other jobs and milestones] ( https://github.com/metal3-io/project-infra/pull/1002 )
8958
9059### Configure Metal3 dev-env to support new branches
9160
9261Metal3-dev-env needs to be modified to support new release branches and
9362tags with supported combination of component versions for testing.
9463
95- [ Prior art] ( https://github.com/metal3-io/metal3-dev-env/pull/1222 )
64+ [ Prior art] ( https://github.com/metal3-io/metal3-dev-env/pull/1523 )
9665
9766### Configure Metal3 dev-tools to sync new release branches to Nordix
9867
9968Dev-tools synchronizes ` metal3-io ` changes to the ` Nordix ` fork for the EST
10069folks.
10170
102- [ Prior art] ( https://github.com/Nordix/metal3-dev-tools/pull/672 )
71+ [ Prior art] ( https://github.com/Nordix/metal3-dev-tools/pull/784 )
10372
10473### Update testing matrix documentation
10574
@@ -121,15 +90,15 @@ Email template, with title `New CAPM3, IPAM and BMO minor releases are out!`
12190``` text
12291Hey folks,
12392
124- CAPM3 v1.x.y, IPAM v1.x.y, BMO v0.x.y and Ironic-image vx.y.z minor releases are out now!
125- Release notes can be found here: [1], [2], [3], [4].
126-
93+ CAPM3 v1.x.y, IPAM v1.x.y, BMO v0.x.y, IrSO v0.x.y and Ironic-image vx.y.z minor
94+ releases are out now! Release notes can be found here: [1], [2], [3], [4], [5].
12795Thanks to all our contributors!
12896
12997[1] https://github.com/metal3-io/cluster-api-provider-metal3/releases/tag/v1.x.y
13098[2] https://github.com/metal3-io/ip-address-manager/releases/tag/v1.x.y
13199[3] https://github.com/metal3-io/baremetal-operator/releases/tag/v0.x.y
132- [4] https://github.com/metal3-io/ironic-image/releases/tag/vx.y.z
100+ [4] https://github.com/metal3-io/ironic-standalone-operator/releases/tag/vx.y.z
101+ [5] https://github.com/metal3-io/ironic-image/releases/tag/vx.y.z
133102
134103Thanks to all our contributors!
135104```
@@ -139,31 +108,15 @@ Slack template:
139108``` text
140109Hey folks,
141110
142- CAPM3 v1.x.y, IPAM v1.x.y, BMO v0.x.y and Ironic-image vx.y.z minor releases
143- are out now! now :tada::metal3:!
111+ CAPM3 v1.x.y, IPAM v1.x.y, BMO v0.x.y, IrSO v0.x.y and Ironic-image vx.y.z minor
112+ releases are out now! now :tada::metal3:!
144113
145114Release notes can be found here:
146115- https://github.com/metal3-io/cluster-api-provider-metal3/releases/tag/v1.x.y
147116- https://github.com/metal3-io/ip-address-manager/releases/tag/v1.x.y
148117- https://github.com/metal3-io/baremetal-operator/releases/tag/v0.x.y
118+ - https://github.com/metal3-io/ironic-standalone-operator/releases/tag/vx.y.z
149119- https://github.com/metal3-io/ironic-image/releases/tag/vx.y.z
150120
151121Thanks to all our contributors! :blush:
152122```
153-
154- ## Releasing process TODO
155-
156- ### BMO
157-
158- BMO releasing to be fine-tuned.
159-
160- 1 . BMO dependencies
161- - BMO contains ` keepalived `
162- ([ within utility-images repo] ( https://github.com/metal3-io/utility-images/tree/main/keepalived ) )
163- 1 . BMO makes assumption about the exact configuration of MariaDB.
164- However, [ mariadb-image] ( https://github.com/metal3-io/mariadb-image ) is
165- currently branchless.
166-
167- ### Mariadb-image
168-
169- Mariadb-image releasing to be implemented.
0 commit comments