Skip to content

Commit 09f9df3

Browse files
committed
Update release doc
Signed-off-by: smoshiur1237 <[email protected]>
1 parent a160df5 commit 09f9df3

File tree

1 file changed

+16
-9
lines changed

1 file changed

+16
-9
lines changed

RELEASE.md

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
A release version string is: `vX.Y.Z`.
2020

2121
A pre-release version string additionally has a suffix:
22+
2223
- `alpha` for an alpha release
2324
- `beta` for a beta release
2425
- `rc` for a release candidate
@@ -45,7 +46,7 @@ There is an [issue template](.github/ISSUE_TEMPLATE/new_release.md) to help trac
4546
- Clone the repository: `git clone [email protected]:kubernetes-sigs/cluster-api-provider-openstack.git`
4647
or if using existing repository, make sure origin is set to the fork and
4748
upstream is set to `kubernetes-sigs`. Verify if your remote is set properly or not
48-
by using following command `git remote -v`.
49+
by using following command `git remote -v`, where origin points to fork and upstream points to main repo.
4950
- Fetch the remote (`kubernetes-sigs`): `git fetch upstream`
5051
This makes sure that all the tags are accessible.
5152

@@ -75,8 +76,8 @@ There is an [issue template](.github/ISSUE_TEMPLATE/new_release.md) to help trac
7576
- The commit and PR title should be 🚀 Release v1.x.y:
7677
-`git commit -S -s -m ":rocket: Release vX.Y.Z"`
7778
-`git push -u origin release-notes-X.Y.Z`
78-
- Important! The commit should only contain the release notes file, nothing
79-
else, otherwise automation will not work.
79+
- Important! The `origin` must be directed to the fork (for example: nordix) otherwise it will have error. Also, the commit should only contain
80+
the release notes file, nothing else, otherwise automation will not work.
8081
- Ask maintainers and release team members to review your pull request.
8182

8283
Once the PR is merged, the following GitHub actions are triggered:
@@ -92,11 +93,13 @@ There is an [issue template](.github/ISSUE_TEMPLATE/new_release.md) to help trac
9293

9394
The image will also be automatically built by CI and pushed to the staging repository. As this only builds the image, it only takes a few minutes.
9495

95-
1. Follow the [image promotion process](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/README.md#image-promoter) to promote the image from the staging repo to `registry.k8s.io/capi-openstack`.
96+
1. Follow the [image promotion process](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/README.md#image-promoter)
97+
to promote the image from the staging repo to `registry.k8s.io/capi-openstack`.
9698
The staging repository can be inspected at [Staging CAPI Openstack](https://console.cloud.google.com/gcr/images/k8s-staging-capi-openstack/GLOBAL). Be
9799
sure to choose the top level `capi-openstack-controller`, which will provide the multi-arch manifest, rather than one for a specific architecture.
98100
The image build logs are available at [Cloud Build](https://console.cloud.google.com/cloud-build/builds?project=k8s-staging-capi-openstack).
99101
Add the new sha=>tag mapping to the [images.yaml](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/images.yaml) (use the sha of the image with the corresponding tag). The PR to update the [images.yaml](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/images.yaml) must be approved in the [OWNERS](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/OWNERS) file and merged.
102+
Here is an example [pull request](https://github.com/kubernetes/k8s.io/pull/8807).
100103

101104
It is good practise to get somebody else to review this PR. It is safe to perform the following steps while waiting for review and the promotion of the image.
102105

@@ -122,12 +125,16 @@ There is an [issue template](.github/ISSUE_TEMPLATE/new_release.md) to help trac
122125

123126
Releasing requires a particular set of permissions.
124127

125-
* Approver role for the image promoter process ([kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/OWNERS](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/OWNERS))
126-
* Tag push and release creation rights to the GitHub repository (team `cluster-api-provider-openstack-maintainers` in [kubernetes/org/config/kubernetes-sigs/sig-cluster-lifecycle/teams.yaml](https://github.com/kubernetes/org/blob/main/config/kubernetes-sigs/sig-cluster-lifecycle/teams.yaml))
128+
1. Approver role for the image promoter process ([kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/OWNERS](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/images/k8s-staging-capi-openstack/OWNERS))
129+
130+
1. Tag push and release creation rights to the GitHub repository (team `cluster-api-provider-openstack-maintainers` in [kubernetes/org/config/kubernetes-sigs/sig-cluster-lifecycle/teams.yaml](https://github.com/kubernetes/org/blob/main/config/kubernetes-sigs/sig-cluster-lifecycle/teams.yaml))
127131

128132
## Staging
129133

130134
There is a post-submit Prow job running after each commit on `main` which pushes a new image to the staging repo (`gcr.io/k8s-staging-capi-openstack/capi-openstack-controller:latest`). Following configuration is involved:
131-
* staging gcr bucket: [kubernetes/k8s.io/blob/main/registry.k8s.io/manifests/k8s-staging-capi-openstack/promoter-manifest.yaml](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/manifests/k8s-staging-capi-openstack/promoter-manifest.yaml)
132-
* post-submit `post-capi-openstack-push-images` Prow job: [kubernetes/test-infra/blob/master/config/jobs/image-pushing/k8s-staging-cluster-api.yaml](https://github.com/kubernetes/test-infra/blob/master/config/jobs/image-pushing/k8s-staging-cluster-api.yaml) (corresponding dashboard is located at [https://testgrid.k8s.io/sig-cluster-lifecycle-image-pushes#post-capi-openstack-push-images](https://testgrid.k8s.io/sig-cluster-lifecycle-image-pushes#post-capi-openstack-push-images))
133-
* Google Cloud Build configuration which is used by the Prow job: [kubernetes-sigs/cluster-api-provider-openstack/cloudbuild.yaml](https://github.com/kubernetes-sigs/cluster-api-provider-openstack/blob/main/cloudbuild.yaml)
135+
136+
1. staging gcr bucket: [kubernetes/k8s.io/blob/main/registry.k8s.io/manifests/k8s-staging-capi-openstack/promoter-manifest.yaml](https://github.com/kubernetes/k8s.io/blob/main/registry.k8s.io/manifests/k8s-staging-capi-openstack/promoter-manifest.yaml)
137+
138+
1. post-submit `post-capi-openstack-push-images` Prow job: [kubernetes/test-infra/blob/master/config/jobs/image-pushing/k8s-staging-cluster-api.yaml](https://github.com/kubernetes/test-infra/blob/master/config/jobs/image-pushing/k8s-staging-cluster-api.yaml) (corresponding dashboard is located at [https://testgrid.k8s.io/sig-cluster-lifecycle-image-pushes#post-capi-openstack-push-images](https://testgrid.k8s.io/sig-cluster-lifecycle-image-pushes#post-capi-openstack-push-images))
139+
140+
1. Google Cloud Build configuration which is used by the Prow job: [kubernetes-sigs/cluster-api-provider-openstack/cloudbuild.yaml](https://github.com/kubernetes-sigs/cluster-api-provider-openstack/blob/main/cloudbuild.yaml)

0 commit comments

Comments
 (0)