This is an automated email from the ASF dual-hosted git repository.
kezhenxu94 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking.git
The following commit(s) were added to refs/heads/master by this push:
new 254a7b6 Refine How-to-release.md (#6754)
254a7b6 is described below
commit 254a7b648f86c09d718b9583b7d963856018f974
Author: Wing <[email protected]>
AuthorDate: Thu Apr 15 07:54:01 2021 +0800
Refine How-to-release.md (#6754)
---
docs/en/guides/How-to-release.md | 129 +++++++++++++++++++--------------------
1 file changed, 63 insertions(+), 66 deletions(-)
diff --git a/docs/en/guides/How-to-release.md b/docs/en/guides/How-to-release.md
index c50ffcf..5bd71f5 100644
--- a/docs/en/guides/How-to-release.md
+++ b/docs/en/guides/How-to-release.md
@@ -1,14 +1,13 @@
Apache SkyWalking release guide
--------------------
-This document guides every committer to release SkyWalking in Apache Way,
-and also help committers to check the release for vote.
+If you're a committer, you can learn how to release SkyWalking in The Apache
Way and start the voting process by reading this document.
-## Setup your development environment
-Follow [Apache maven deployment environment
document](http://www.apache.org/dev/publishing-maven-artifacts.html#dev-env)
-to set gpg tool and encrypt passwords
+## Set up your development environment
+Follow the steps in the [Apache maven deployment environment
document](http://www.apache.org/dev/publishing-maven-artifacts.html#dev-env)
+to set gpg tool and encrypt passwords.
-Use the following block as a template and place it in ~/.m2/settings.xml
+Use the following block as a template and place it in `~/.m2/settings.xml`.
```
<settings>
@@ -32,34 +31,33 @@ Use the following block as a template and place it in
~/.m2/settings.xml
```
## Add your GPG public key
-1. Add your GPG public key into [SkyWalking GPG
KEYS](https://dist.apache.org/repos/dist/release/skywalking/KEYS) file,
-only if you are a committer, use your Apache id and password login this svn,
and update file. **Don't override the existing file.**
-1. Upload your GPG public key to public GPG site. Such as [MIT's
site](http://pgp.mit.edu:11371/). This site should be in
-Apache maven staging repository check list.
+1. Add your GPG public key into the [SkyWalking GPG
KEYS](https://dist.apache.org/repos/dist/release/skywalking/KEYS) file.
+If you are a committer, use your Apache ID and password to log in this svn,
and update the file. **Don't override the existing file.**
+1. Upload your GPG public key to the public GPG site, such as [MIT's
site](http://pgp.mit.edu:11371/). This site should be in the
+Apache maven staging repository checklist.
## Test your settings
-This step is only for test, if your env is set right, don't need to check
every time.
+This step is only for testing purpose. If your env is correctly set, you don't
need to check every time.
```
./mvnw clean install -Pall (this will build artifacts, sources and sign)
```
-## Prepare the release
+## Prepare for the release
```
./mvnw release:clean
./mvnw release:prepare -DautoVersionSubmodules=true -Pall
```
-- Set version number as x.y.z, and tag as **v**x.y.z (version tag must start
with **v**, you will find the purpose in next step.)
+- Set version number as x.y.z, and tag as **v**x.y.z (The version tag must
start with **v**. You will find out why this is necessary in the next step.)
-_You could do a GPG sign before doing release, if you need input the password
to sign, and the maven don't give the chance,
-but just failure. Run `gpg --sign xxx` to any file could remember the password
for enough time to do release._
+_You could do a GPG signature before preparing for the release. If you need to
input the password to sign, and the maven doesn't provide you with the
opportunity to do so, this may lead to failure of the release. To resolve this,
you may run `gpg --sign xxx` in any file. This will allow it to remember the
password for long enough to prepare for the release._
## Stage the release
```
./mvnw release:perform -DskipTests -Pall
```
-- The release will automatically be inserted into a temporary staging
repository for you.
+- The release will be automatically inserted into a temporary staging
repository.
## Build and sign the source code package
```shell
@@ -68,36 +66,35 @@ cd tools/releasing
bash create_source_release.sh
```
-This scripts should do following things
+This script takes care of the following things:
1. Use `v` + `RELEASE_VERSION` as tag to clone the codes.
-1. Make `git submodule init/update` done.
-1. Exclude all unnecessary files in the target source tar, such as .git,
.github, .gitmodules. See the script for the details.
-1. Do `gpg` and `shasum 512`.
+1. Complete `git submodule init/update`.
+1. Exclude all unnecessary files in the target source tar, such as `.git`,
`.github`, and `.gitmodules`. See the script for more details.
+1. Execute `gpg` and `shasum 512`.
-The `apache-skywalking-apm-x.y.z-src.tgz` should be found in `tools/releasing`
folder,
-with .asc, .sha512.
+`apache-skywalking-apm-x.y.z-src.tgz` and files ending with `.asc` and
`.sha512` may be found in the `tools/releasing` folder.
-## Find and download distribution in Apache Nexus Staging repositories
-1. Use ApacheId to login `https://repository.apache.org/`
-1. Go to `https://repository.apache.org/#stagingRepositories`
-1. Search `skywalking` and find your staging repository
-1. Close the repository and wait for all checks pass. In this step, your GPG
KEYS will be checked. See [set PGP document](#add-your-gpg-public-key),
+## Locate and download the distribution package in Apache Nexus Staging
repositories
+1. Use your Apache ID to log in to `https://repository.apache.org/`.
+1. Go to `https://repository.apache.org/#stagingRepositories`.
+1. Search `skywalking` and find your staging repository.
+1. Close the repository and wait for all checks to pass. In this step, your
GPG KEYS will be checked. See the [set PGP document](#add-your-gpg-public-key),
if you haven't done it before.
-1. Go to `{REPO_URL}/org/apache/skywalking/apache-skywalking-apm/x.y.z`
-1. Download `.tar.gz` and `.zip` with .asc and .sha1
+1. Go to `{REPO_URL}/org/apache/skywalking/apache-skywalking-apm/x.y.z`.
+1. Download `.tar.gz` and `.zip` and files ending with `.asc` and `.sha1`.
## Upload to Apache svn
-1. Use ApacheId to login `https://dist.apache.org/repos/dist/dev/skywalking/`
-1. Create folder, named by release version and round, such as: x.y.z
-1. Upload Source code package to the folder with .asc, .sha512
- * Package name: apache-skywalking-x.y.z-src.tar.gz
+1. Use your Apache ID to log in to
`https://dist.apache.org/repos/dist/dev/skywalking/`.
+1. Create a folder and name it by the release version and round, such as:
`x.y.z`
+1. Upload the source code package to the folder with files ending with `.asc`
and `.sha512`.
+ * Package name: `apache-skywalking-x.y.z-src.tar.gz`
* See Section "Build and sign the source code package" for more details
-1. Upload distribution package to the folder with .asc, .sha512
- * Package name: apache-skywalking-bin-x.y.z.tar.gz,
apache-skywalking-bin-x.y.z.zip
- * See Section "Find and download distribution in Apache Nexus Staging
repositories" for more details
- * Create .sha512 package: `shasum -a 512 file > file.sha512`
+1. Upload the distribution package to the folder with files ending with `.asc`
and `.sha512`.
+ * Package name: `apache-skywalking-bin-x.y.z.tar.gz` and
`apache-skywalking-bin-x.y.z.zip`
+ * See Section "Locate and download the distribution package in Apache
Nexus Staging repositories" for more details.
+ * Create a `.sha512` package: `shasum -a 512 file > file.sha512`
## Make the internal announcements
Send an announcement mail in dev mail list.
@@ -151,9 +148,9 @@ A vote regarding the quality of this test build will be
initiated
within the next couple of days.
```
-## Wait at least 48 hours for test responses
-Any PMC, committer or contributor can test features for releasing, and
feedback.
-Based on that, PMC will decide whether start a vote.
+## Wait for at least 48 hours for test responses
+Any PMC member, committer or contributor can test the release features and
provide feedback.
+Based on that, the PMC will decide whether to start the voting process.
## Call a vote in dev
Call a vote in `[email protected]`
@@ -208,26 +205,26 @@ Voting will start now (xxxx date) and will remain open
for at least 72 hours, Re
```
## Vote Check
-All PMC members and committers should check these before vote +1.
+All PMC members and committers should check these before casting +1 votes.
1. Features test.
-1. All artifacts in staging repository are published with .asc, .md5, *sha1
files
-1. Source code and distribution package (apache-skywalking-x.y.z-src.tar.gz,
apache-skywalking-bin-x.y.z.tar.gz, apache-skywalking-bin-x.y.z.zip)
-are in `https://dist.apache.org/repos/dist/dev/skywalking/x.y.z` with .asc,
.sha512
-1. `LICENSE` and `NOTICE` are in Source code and distribution package.
-1. Check `shasum -c apache-skywalking-apm-x.y.z-src.tgz.sha512`
+1. All artifacts in staging repository are published with `.asc`, `.md5`, and
`*sha1` files.
+1. Source code and distribution package (`apache-skywalking-x.y.z-src.tar.gz`,
`apache-skywalking-bin-x.y.z.tar.gz`, `apache-skywalking-bin-x.y.z.zip`)
+are found in `https://dist.apache.org/repos/dist/dev/skywalking/x.y.z` with
`.asc` and `.sha512`.
+1. `LICENSE` and `NOTICE` are in the source code and distribution package.
+1. Check `shasum -c apache-skywalking-apm-x.y.z-src.tgz.sha512`.
1. Check `gpg --verify apache-skywalking-apm-x.y.z-src.tgz.asc
apache-skywalking-apm-x.y.z-src.tgz`
-1. Build distribution from source code package
(apache-skywalking-x.y.z-src.tar.gz) by following this
[doc](https://github.com/apache/skywalking/blob/master/docs/en/guides/How-to-build.md#build-from-apache-source-code-release).
-1. Check Apache License Header. Run `docker run --rm -v
$(pwd):/github/workspace apache/skywalking-eyes header check`. (No binary in
source codes)
+1. Build a distribution package from the source code package
(`apache-skywalking-x.y.z-src.tar.gz`) by following this
[doc](https://github.com/apache/skywalking/blob/master/docs/en/guides/How-to-build.md#build-from-apache-source-code-release).
+1. Check the Apache License Header. Run `docker run --rm -v
$(pwd):/github/workspace apache/skywalking-eyes header check`. (No binaries in
source codes)
-Vote result should follow these.
-1. PMC vote is +1 binding, all others is +1 no binding.
-1. In 72 hours, you get at least 3 (+1 binding), and have more +1 than -1.
Vote pass.
+The voting process is as follows:
+1. All PMC member votes are +1 binding, and all other votes are +1 but
non-binding.
+1. If you obtain at least 3 (+1 binding) votes with more +1 than -1 votes
within 72 hours, the release will be approved.
-## Publish release
-1. Move source codes tar balls and distributions to
`https://dist.apache.org/repos/dist/release/skywalking/`.
+## Publish the release
+1. Move source codes tar and distribution packages to
`https://dist.apache.org/repos/dist/release/skywalking/`.
```
> export SVN_EDITOR=vim
> svn mv https://dist.apache.org/repos/dist/dev/skywalking/x.y.z
> https://dist.apache.org/repos/dist/release/skywalking
@@ -236,15 +233,15 @@ enter your apache password
....
```
-2. Do release in nexus staging repo.
-3. Public download source and distribution tar/zip locate in
`http://www.apache.org/dyn/closer.cgi/skywalking/x.y.z/xxx`.
-We only publish Apache mirror path as release info.
-4. Public asc and sha512 locate in
`https://www.apache.org/dist/skywalking/x.y.z/xxx`
-5. Public KEYS pointing to `https://www.apache.org/dist/skywalking/KEYS`
-6. Update website download page. http://skywalking.apache.org/downloads/ .
Include new download source, distribution, sha512, asc and document
-links. Links could be found by following above rules(3)-(6).
-7. Add a release event on website homepage and event page. Announce the public
release with changelog or key features.
-8. Send ANNOUNCE email to `[email protected]`, `[email protected]`,
the sender should use Apache email account.
+2. Release in the nexus staging repo.
+3. Public download source and distribution tar/zip are located in
`http://www.apache.org/dyn/closer.cgi/skywalking/x.y.z/xxx`.
+The Apache mirror path is the only release information that we publish.
+4. Public asc and sha512 are located in
`https://www.apache.org/dist/skywalking/x.y.z/xxx`.
+5. Public KEYS point to `https://www.apache.org/dist/skywalking/KEYS`.
+6. Update the website download page. http://skywalking.apache.org/downloads/ .
Add a new download source, distribution, sha512, asc, and document
+links. The links can be found following rules (3) to (6) above.
+7. Add a release event on the website homepage and event page. Announce the
public release with changelog or key features.
+8. Send ANNOUNCE email to `[email protected]`, `[email protected]`.
The sender should use the Apache email account.
```
Mail title: [ANNOUNCE] Apache SkyWalking x.y.z released
@@ -285,7 +282,7 @@ SkyWalking Resources:
- Apache SkyWalking Team
```
-## Clean old release
-Once the latest release published, we should clean the old releases from
mirror system.
-1. Update the download links(source, dist, asc, sha512) on the website to
archive repo, https://archive.apache.org/dist/skywalking.
-2. After (1) deployed, remove previous releases from
https://dist.apache.org/repos/dist/release/skywalking/.
+## Clean up the old releases
+Once the latest release has been published, you should clean up the old
releases from the mirror system.
+1. Update the download links (source, dist, asc, and sha512) on the website to
the archive repo (https://archive.apache.org/dist/skywalking).
+2. Remove previous releases from
https://dist.apache.org/repos/dist/release/skywalking/.