|
4 | 4 |
|
5 | 5 | For a **MAJOR** or **MINOR** release: |
6 | 6 |
|
7 | | -- Checkout from `main` branch |
| 7 | +- Ensure that `codefresh(deps): bump subcharts` PR has been merged to `main`. This PR updates the Codefresh subchart versions in `Chart.yaml` to the latest released versions. |
| 8 | +- Create a new `release-x.y` branch from `main`, where `x.y` is the new major or minor version number. |
8 | 9 | ```shell |
9 | | -git checkout -b onprem-X.Y main |
| 10 | +git checkout -b release-x.y main |
10 | 11 | ``` |
11 | | -- Merge latest `release-X.Y` into the new branch |
| 12 | +> Just creating a release branch without any commits will NOT create release branches for dependent components (cf-api, cf-ui, argo-platform, etc)! Newly created `release-x.y` branch must be updated! |
| 13 | +- Open a PR against `release-x.y` branch |
12 | 14 | ```shell |
13 | | -git merge --no-ff release-X.Y |
| 15 | +git checkout -b update-release-x.y release-x.y |
14 | 16 | ``` |
15 | | -- Resolve any merge conflicts. |
16 | | -- In `Chart.yaml`: |
17 | | - - Update `.version` and `.appVersion` |
18 | | - - For Codefresh dependencies (i.e. with `repository: oci://quay.io/codefresh/charts`) update version to use latest (i.e. `version: *`) |
19 | | - - Update `artifacthub.io/changes` annotation |
20 | | -- Update `values.yaml`, `templates/**`, etc with required changes |
21 | | -- Run `helm dep update` to update dependencies |
22 | | -- Run `./charts/codefresh/.ci/runtime-images.sh` |
23 | | -- Run `./scripts/helm-docs.sh` |
24 | | -- Commit changes and open the PR against the `main` branch |
25 | | -- Comment `/test` to trigger CI pipeline |
26 | | -- Merge the PR after successful CI build |
27 | | -- After merging the PR the corresponding `release-X.Y` branch will be created. For the next patches, `release-X.Y` branch must be used as BASE branch! |
| 17 | +- **optional** Update subchart versions in `Chart.yaml` (if not already done in `codefresh(deps): bump subcharts` PR) |
| 18 | +- **optional** Update `values.yaml`, `templates/**` files if required |
| 19 | +- Run `./scripts/helm-docs.sh` to update `README.md` files |
| 20 | +- Commit and push changes, trigger CI with `/test` comment, make sure all checks pass, then merge the PR |
| 21 | +- When the PR is merged, the release draft will be created automatically and `codefresh/x.y.z: prepare chart content for release` PR will be opened with the updated chart `.version` and `artifacthub.io/changes` annotation. |
| 22 | +- Review `codefresh/x.y.z: prepare chart content for release` PR. Update `artifacthub.io/changes` annotation if needed. |
| 23 | +- Merge the PR to create a new release. Release will be published automatically. |
28 | 24 |
|
29 | 25 | For a **PATCH** release: |
30 | 26 |
|
31 | | -- Checkout from the corresponding `release-<MAJOR>.<MINOR>` branch |
32 | | -```shell |
33 | | -git checkout -b onprem-X.Y.Z release-X.Y |
34 | | -``` |
35 | | -- Update `.version` in Chart.yaml |
36 | | -- Update `artifacthub.io/changes` annotation in Chart.yaml |
37 | | -- *optional* Update `dependencies` in Chart.yaml |
38 | | -- *optional* Update `values.yaml`, `templates/**`, etc with required changes |
39 | | -- Run `helm dep update` to update dependencies |
40 | | -- *optional* Run `./charts/codefresh/.ci/runtime-images.sh` |
41 | | -- Run `./scripts/helm-docs.sh` |
42 | | -- Commit changes and open the PR against the corresponding `release-<MAJOR>.<MINOR>` branch |
43 | | -- Comment `/test` to trigger CI pipeline |
44 | | -- Merge the PR after successful CI build |
| 27 | + |
| 28 | +## Versioning in CI and Promote pipelines |
0 commit comments