180 lines
5.5 KiB
Markdown
180 lines
5.5 KiB
Markdown
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.
|
|
|
|
|
|
## Setup your development environment
|
|
Use the following block as a template and place it in ~/.m2/settings.xml
|
|
|
|
```
|
|
<settings>
|
|
...
|
|
<servers>
|
|
<!-- To publish a snapshot of some part of Maven -->
|
|
<server>
|
|
<id>apache.snapshots.https</id>
|
|
<username> <!-- YOUR APACHE LDAP USERNAME --> </username>
|
|
<password> <!-- YOUR APACHE LDAP PASSWORD (encrypted) --> </password>
|
|
</server>
|
|
<!-- To stage a release of some part of Maven -->
|
|
<server>
|
|
<id>apache.releases.https</id>
|
|
<username> <!-- YOUR APACHE LDAP USERNAME --> </username>
|
|
<password> <!-- YOUR APACHE LDAP PASSWORD (encrypted) --> </password>
|
|
</server>
|
|
...
|
|
</servers>
|
|
</settings>
|
|
```
|
|
|
|
## Test your settings
|
|
```
|
|
mvn clean install -Papache-release (this will build artifacts, sources and sign)
|
|
```
|
|
|
|
## Prepare the release
|
|
```
|
|
mvn release:clean
|
|
mvn release:prepare -DautoVersionSubmodules=true
|
|
```
|
|
|
|
## Stage the release for a vote
|
|
```
|
|
mvn release:perform -DskipTests
|
|
```
|
|
The release will automatically be inserted into a temporary staging repository for you.
|
|
|
|
## Build and sign the source code package
|
|
```shell
|
|
switch to release version tag
|
|
cd tools/releasing
|
|
sh create_source_release.sh
|
|
```
|
|
|
|
The `apache-skywalking-apm-incubating-x.y.z-src.tgz` should be found in `tools/releasing` folder,
|
|
with .asc, .sha512, .md5
|
|
|
|
## 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.
|
|
1. Go to `{REPO_URL}/org/apache/skywalking/apache-skywalking-apm-incubating/x.y.z`
|
|
1. Download `.tar.gz` and `.zip` with .asc and .sha1
|
|
|
|
|
|
## Upload to Apache svn
|
|
1. Use ApacheId to login `https://dist.apache.org/repos/dist/dev/incubator/skywalking/`
|
|
1. Create folder, named by release version
|
|
1. Upload Source code and distribution package (apache-skywalking-incubating-x.y.z-src.tar.gz, apache-skywalking-incubating-x.y.z.tar.gz, apache-skywalking-incubating-x.y.z.zip)
|
|
`in svn.apache.org` with .asc, .sha512
|
|
|
|
## Make the internal announcements
|
|
Send an announcement mail in dev mail list.
|
|
|
|
```
|
|
Mail title: [ANNOUNCE] SkyWalking x.y.z test build available
|
|
|
|
Mail content:
|
|
The test build of x.y.z is available.
|
|
|
|
This is our Apache Incubator release.
|
|
We welcome any comments you may have, and will take all feedback into
|
|
account if a quality vote is called for this build.
|
|
|
|
Release notes:
|
|
|
|
* https://github.com/apache/incubator-skywalking/blob/master/CHANGELOG.md
|
|
|
|
Release Candidate:
|
|
|
|
* https://dist.apache.org/repos/dist/dev/incubator/skywalking/xxxx
|
|
|
|
Maven 2 staging repository:
|
|
|
|
* https://repository.apache.org/content/repositories/xxxx/org/apache/skywalking/
|
|
|
|
Release Tag :
|
|
|
|
* (Git Tag)
|
|
|
|
Release CommitID :
|
|
|
|
* (Git Commit ID)
|
|
|
|
Keys to verify the Release Candidate :
|
|
|
|
* http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x2EF5026E70A55777 corresponding to pengys@apache.org
|
|
|
|
Guide to build the release from source :
|
|
|
|
* https://github.com/apache/incubator-skywalking/blob/master/docs/en/How-to-build.md
|
|
|
|
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 PPMC, committer or contributor can test features for releasing, and feedback.
|
|
Based on that, PPMC will decide whether start a vote.
|
|
|
|
## Call a vote in dev
|
|
Call a vote in `dev@skywalking.apache.org`
|
|
|
|
```
|
|
Mail title: [VOTE] Release Apache SkyWalking (incubating) version x.y.z
|
|
|
|
Mail content:
|
|
Hi All,
|
|
This is a call for vote to release Apache SkyWalking (Incubating) version x.y.z.
|
|
|
|
Release notes:
|
|
|
|
* https://github.com/apache/incubator-skywalking/blob/master/CHANGELOG.md
|
|
|
|
Release Candidate:
|
|
|
|
* https://dist.apache.org/repos/dist/dev/incubator/skywalking/xxxx
|
|
|
|
Maven 2 staging repository:
|
|
|
|
* https://repository.apache.org/content/repositories/xxxx/org/apache/skywalking/
|
|
|
|
Release Tag :
|
|
|
|
* (Git Tag)
|
|
|
|
Release CommitID :
|
|
|
|
* (Git Commit ID)
|
|
|
|
Keys to verify the Release Candidate :
|
|
|
|
* http://pgp.mit.edu:11371/pks/lookup?op=get&search=0x2EF5026E70A55777 corresponding to pengys@apache.org
|
|
|
|
Guide to build the release from source :
|
|
|
|
* https://github.com/apache/incubator-skywalking/blob/master/docs/en/How-to-build.md
|
|
|
|
Voting will start now (xxxx date) and will remain open for at least 72 hours, Request all PPMC members to give their vote.
|
|
[ ] +1 Release this package.
|
|
[ ] +0 No opinion.
|
|
[ ] -1 Do not release this package because....
|
|
```
|
|
|
|
## Vote Check
|
|
All PPMC members and committers should check these before vote +1.
|
|
|
|
1. Features test.
|
|
1. All artifacts in staging repository are published with .asc, .md5, *sha1 files
|
|
1. Source code and distribution package (apache-skywalking-incubating-x.y.z-src.tar.gz, apache-skywalking-incubating-x.y.z.tar.gz, apache-skywalking-incubating-x.y.z.zip)
|
|
`in svn.apache.org` with .asc, .sha512
|
|
1. `LICENSE` and `NOTICE` are in Source code and distribution package.
|
|
1. Check `shasum -c apache-skywalking-apm-incubating-x.y.z-src.tgz.sha512`
|
|
1. Build distribution from source code package (apache-skywalking-incubating-x.y.z-src.tar.gz) by following this [doc](https://github.com/apache/incubator-skywalking/blob/master/docs/en/How-to-build.md#build-from-apache-source-codes).
|
|
1. Apache RAT check. Run `mvn apache-rat:check`.
|
|
|
|
## Call for a vote in Apache IPMC
|
|
Call a vote in `general@incubator.apache.org`
|