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
Copy file name to clipboardexpand all lines: contribute/release-process.md
+31-17
Original file line number
Diff line number
Diff line change
@@ -25,7 +25,6 @@ Sometimes some PRs cannot be cherry-picked cleanly, you might need to create a s
25
25
26
26
For PRs that are still open, you can choose to delay them to the next release or ping others to review so that they can be merged.
27
27
28
-
To verify the release branch is not broken, you should trigger a Pulsar CI builds for the [pulsar-ci.yaml](https://github.com/apache/pulsar/actions/workflows/pulsar-ci.yaml) and [pulsar-ci-flaky.yaml](https://github.com/apache/pulsar/actions/workflows/pulsar-ci-flaky.yaml) workflows. The builds must pass before a release is performed.
29
28
30
29
If you haven't already done it, [create and publish the GPG key](create-gpg-keys.md). You will use the key to sign the release artifacts.
31
30
@@ -43,6 +42,14 @@ Before you start the next release steps, make sure you have installed these soft
43
42
44
43
Please refer to ["Setting up JDKs and Maven using SDKMAN"](setup-buildtools.md) for details on how to install JDKs and Maven using SDKMAN.
45
44
45
+
## Prepare the release branch
46
+
47
+
Before starting a release, besides handling the PRs, it's necessary to check that there aren't open critical security vulnerabilities in the dependencies. This can be checked from GitHub Security Alerts and the [OWASP Dependency Check workflow run logs](https://github.com/apache/pulsar/actions/workflows/ci-owasp-dependency-check.yaml).
48
+
49
+
In addition, it's useful to check whether there's [a new release of Netty available](https://netty.io/news/index.html) with important fixes.
50
+
51
+
To verify the release branch is not broken, you should trigger a Pulsar CI builds for the [pulsar-ci.yaml](https://github.com/apache/pulsar/actions/workflows/pulsar-ci.yaml) and [pulsar-ci-flaky.yaml](https://github.com/apache/pulsar/actions/workflows/pulsar-ci-flaky.yaml) workflows. The builds must pass before a release is performed.
52
+
46
53
## Set environment variables to be used across the commands {#env-vars}
47
54
48
55
```shell
@@ -157,7 +164,9 @@ cd $PULSAR_PATH
157
164
158
165
# Commit
159
166
git commit -m "Release $VERSION_WITHOUT_RC" -a
167
+
```
160
168
169
+
```shell
161
170
# Create a "candidate" tag
162
171
git tag -u $APACHE_USER@apache.org v$VERSION_RC -m "Release $VERSION_RC"
163
172
@@ -304,17 +313,19 @@ svn ci -m "Staging artifacts and signature for Pulsar release $VERSION_RC"
304
313
305
314
Upload the artifacts to ASF Nexus:
306
315
316
+
```shell
317
+
# add space before the "export APACHE_PASSWORD" so that the password doesn't get added to shell history
318
+
# set your ASF password in the following line
319
+
export APACHE_PASSWORD=""
320
+
```
321
+
307
322
```shell
308
323
cd$PULSAR_PATH
309
324
# ensure the correct JDK version is used for building
310
325
sdk u java $SDKMAN_JAVA_VERSION
311
326
# Confirm if there are no other new dirs or files in the $PULSAR_PATH because all files in $PULSAR_PATH will be compressed and uploaded to ASF Nexus.
312
327
git status
313
328
314
-
# add space before the "export APACHE_PASSWORD" so that the password doesn't get added to shell history
315
-
# set your ASF password in the following line
316
-
export APACHE_PASSWORD=""
317
-
318
329
# src/settings.xml from master branch to /tmp/mvn-apache-settings.xml since it's missing in some branches
0 commit comments