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
If the release you plan to create corresponds with an existing [milestone](https://github.com/operator-framework/operator-lifecycle-manager/milestone/), make sure that all features have been committed. If a feature will not be added to the release be sure to remove it from the milestone.
5
4
5
+
If the release you plan to create corresponds with an existing [milestone](https://github.com/operator-framework/operator-lifecycle-manager/milestone/), make sure that all features have been committed. If a feature will not be added to the release be sure to remove it from the milestone.
6
6
7
7
## Step 1: Installing Requirements
8
-
Ensure you have `autoconf`, `automake`, and `libtool` installed. On Fedora, you can run
9
8
10
-
```
9
+
Ensure you have `autoconf`, `automake`, and `libtool` installed.
10
+
11
+
The following command can be used to install these packages on Fedora:
12
+
13
+
```bash
11
14
dnf install autoconf automake libtool
12
15
```
13
16
14
-
15
17
## Step 2: Verify Manifests
16
-
We need to ensure that `./manifests` folder is in sync with the templates in `deploy/chart/templates`.
18
+
17
19
* Make sure you have a clean workspace. `git status` should show no change(s) or untracked file.
18
20
* Make sure you pull the latest from `upstream`.
19
21
* Checkout `master` branch.
20
22
* Run `make release`
21
23
22
-
This should generate no change(s) in `./manifests` folder. If there are no change(s) in `./manifests` folder then you can proceed with the new release.
23
-
You can clean your workspace
24
-
```bash
25
-
git checkout -- .
26
-
git clean -df
27
-
```
28
-
29
-
If you see change(s) in `./manifests` folder, then:
30
-
* STOP the release process
31
-
* Consult the team and backport the changes in `./manifests` folder into the templates.
32
-
33
-
34
24
## Step 3: Bump the Version
25
+
35
26
* Bump the version in `OLM_VERSION` file. Make a new PR with this change only.
36
27
* Wait until the PR has been merged.
37
28
38
-
39
29
## Step 4: Setup Tag
30
+
40
31
If git `push` is disabled on `upstream` repository in your fork, then clone this repository so that you can push to `master` directly.
41
32
42
33
* Pull the latest.
43
34
* Make sure you are on `master` branch.
44
-
* Make a new tag that matches the version.
35
+
* Make a new tag that matches the version.
45
36
* Push tag directly to this repository.
46
37
47
38
```bash
@@ -55,26 +46,29 @@ git push origin 0.11.0
55
46
* Confirm that new images have been built here: <https://quay.io/repository/operator-framework/olm?tab=builds>.
56
47
57
48
## Step 5: Generate Manifests
49
+
58
50
* Make sure you have a clean workspace. `git status` should show no change(s) or untracked file.
59
51
* Make sure you pull the latest from `upstream`.
60
52
* Run `make release` on `master` branch.
61
53
* Make a new PR and ensure all tests pass for merging.
62
54
63
55
Verify the following:
56
+
64
57
* The image digest in manifest file(s) matches the new tag in `quay.io`.
65
-
*`./manifests` folder only differs in version and image.
66
58
67
59
## Step 6: Generate Changelog
60
+
68
61
Changelogs for OLM are generated using [GitHub Changelog Generator](https://github.com/github-changelog-generator/github-changelog-generator).
69
62
70
63
You need to have `gem` installed on your workstation. Execute the following command to install `github-changelog-generator`.
64
+
71
65
```bash
72
66
gem install github_changelog_generator
73
-
```
67
+
```
74
68
75
69
Afterward installing it may be worth modifying the `MAX_THREAD_NUMBER` to something lower similar to what is done here: <https://github.com/github-changelog-generator/github-changelog-generator/pull/661>. Note that the referenced PR has been merged, but the number is still too high. Although 1 is a very low value, it does seem to work more reliably. (On Fedora, the install location for the gem is `~/.gem/ruby/gems/github_changelog_generator-1.14.3/lib/github_changelog_generator/octo_fetcher.rb`.)
76
70
77
-
Make sure you have a GitHub API access token. You can generate one from [tokens](https://github.com/settings/tokens)
71
+
Make sure you have a GitHub API access token. You can generate one from [tokens](https://github.com/settings/tokens)
0 commit comments