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
Add a procedure and script to publish an operator release to the
upstream k8s community operators OperatorHub. The script requires the
user to fork the upstream k8s operators repsository and afterwards
submit a pull request by hand. The script also supports releasing to
any catalog that uses the OperatorHub file structure.
In the future this procedure/script can be added to our release
automation so when an operator release is published, we initiate the
process to update the upstream OperatorHub catalog.
Co-authored-by: Sascha Schwarze <[email protected]>
Signed-off-by: Adam Kaplan <[email protected]>
Copy file name to clipboardExpand all lines: docs/development/releasing.md
+50Lines changed: 50 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,6 +4,10 @@ This document outlines the steps required to release the operator. This document
4
4
have achieved the "Approver"/"Maintainer" status, and have permission to manually trigger GitHub
5
5
Actions on this repo.
6
6
7
+
To release operator updates to the [k8s community operators](https://github.com/k8s-operatorhub/community-operators),
8
+
you must be listed as an approver in our [operator CI configuration](https://github.com/k8s-operatorhub/community-operators/blob/main/operators/shipwright-operator/ci.yaml)
9
+
or request approval from a listed GitHub user.
10
+
7
11
## Release Candidates (`X.Y.0-rcN`)
8
12
9
13
### Step 0: Set Up the Release Branch
@@ -78,3 +82,49 @@ Work with the community to get these pull requests merged.
78
82
Repeat the process in [Step 1](#step-1-create-a-release-candidate) and
79
83
[Step 2](#step-2-publish-draft-release) above to create the release. For an official release, the
80
84
version should adhere to the `X.Y.Z` format (not extra dashes).
85
+
86
+
### Step 3 (if needed): Set up your machine to run the OperatorHub release script
87
+
88
+
The OperatorHub release script requires the following:
89
+
90
+
1. Fork the [k8s community-operators](https://github.com/k8s-operatorhub/community-operators)
91
+
repository.
92
+
2. Clone your fork with the `origin` remote name. Be sure to set your name and email in your local
93
+
`git` configuration.
94
+
3. Add the community operators repository as the `upstream` remote:
# This script generates a pull request to add the release to operatorhub.io
6
+
# Prerequisites:
7
+
# - The user has cloned and forked the operator catalog repository
8
+
# - The machine running this script has crane installed: https://github.com/google/go-containerregistry/blob/main/cmd/crane/README.md
9
+
10
+
# Environment variables to tune the script's behavior
11
+
# - OPERATORHUB_DIR: The local path to the operator catalog repository.
12
+
# - VERSION: The version of the operator to release.
13
+
# - HUB_REPO: A regular expression to match the GitHub org/repository of the catalog. Note that this
14
+
# is a regular expression, so special characters need to be escaped.
0 commit comments