...
This only needs doing if this is the first release in a series (X.Y.0).
Update CHANGES.txt in trunk to replace
Trunk (unreleased changes)
withRelease X.Y.0 - YYYY-MM-DD
. Commit:No Format svngit commit -m "Preparing for release X.Y.Z"
Create a branch for the release series:
No Format svngit copy https://svn.apache.org/repos/asf/incubator/bigtop/trunk \ https://svn.apache.org/repos/asf/incubator/bigtop/branches/checkout -b branch-X.Y -m "Branching for X.Y releases" .Z origin/master
- Add back
Trunk (unreleased changes)
to CHANGES.txt in trunk. Bump the version number in
trunkthe master branch:
No Format for file in $(find . -name pom.xml); do sed -i -e "s/0X.XY.0Z-incubating-SNAPSHOT/0A.YB.0C-incubating-SNAPSHOT/" $file; done
- Commit these changes to trunkthe master and push.
Checkout the release branch
No Format svngit checkout https://svn.apache.org/repos/asf/incubator/bigtop/branches/branch-X.Y branch-X.Y.Z
Update the release branch's version information: the version number in the release branch ends in
1-SNAPSHOT
, but we need to remove this for the release. For example,0.
incubating-8.0-
1SNAPSHOT
needs to be changed to0.
-incubating8.0
.
No Format for file in $(find . -name pom.xml); do sed -e "s/0.X.Y.X-incubating-SNAPSHOT/0.X.Y-incubating.Z/" $file; done
Commit these changes to the release branch
No Format svngit commit -m "Changing version to 0.X.Y.Z-incubating"
3. Generate the Release Notes
...
Wrap the title ("Release Notes - Bigtop - Version X.Y.Z") inside an <h1> <h3> element.
4. Commit and Tag
Commit changes to subversion, and tag:
No Format |
---|
svngit commit -m "Preparing for release X.Y.Z" svngit copy https://svn.apache.org/repos/asf/incubator/bigtop/branches/branch-X.Y https://svn.apache.org/repos/asf/incubator/bigtop/tags/release-X.Y.Z tag release-x.y.z -m "Bigtop X.Y.Z release." git push --tags |
55. Build and run Package and Smoke Tests
...
Create a maven settings file ~/.m2/settings.xml with the following content:
No Format |
---|
<settings>
<servers>
<server>
<id>apache.snapshots.https</id>
<username>APACHE-ID</username>
<password>APACHE-PASSWORD</password>
</server>
<server>
<id>apache.staging.https</id>
<username>APACHE-ID</username>
<password>APACHE-PASSWORD</password>
</server>
<server>
<id>apache.releases.https</id>
<username>APACHE-ID</username>
<password>APACHE-PASSWORD</password>
</server>
</servers>
</settings>
|
Build the artifacts:
No Format |
---|
mvn site mvn -Prelease package assembly:assembly -Prelease package assembly:assembly |
The following command deploys the binary release artifacts for iTest, tests and other helper files, checksums, and signatures (you will need to enter a GPG passphrase) to the Apache Staging repo.
No Format |
---|
mvn deploy -f bigtop-test-framework/pom.xml
mvn deploy -f bigtop-tests/test-artifacts/pom.xml
mvn deploy -f bigtop-tests/test-execution/pom.xml |
If this step fails with an Access denied error check that you have the required permissions on Nexus.
The following command deploys the artifacts, checksums, and signatures (you will might need to enter a GPG passphrase again) to the Apache Staging repo.
No Format |
---|
mvn deploy -Prelease -Ppackage -Pdeploy -Pjavadoc |
If this step fails with an Access denied error check that you have the required permissions on Nexus.
Login to https://repository.apache.org using your Apache SVN credentials. Click on Staging on the left. Then click on org.apache.whirr orgapachebigtop in the list of repositories. In the panel below you should see an open repository that is linked to your username and IP. Select this repository and click Close. This will close the repository from future deployments and make it available for others to view.
BIGTOP-1463 is open to track the improvements of the release process.
7. Copy Release Artifacts
The artifacts that end up in the distribution directory are the source distributions (along with their checksums and signatures), so they need to be copied from the Maven repo to the release directory on people.apache.org so folks can vote on them:
No Format |
---|
ssh people.apache.org
VERSION=X.Y.Z
mkdir ~/public_html/bigtop-$VERSION-RC0
cd ~/public_html/bigtop-$VERSION-RC0
for ext in "" .asc .md5 .sha1; do
wget --no-check-certificate https://repository.apache.org/content/repositories/orgapachebigtop-[YOUR REPOSITORY ID]/org/apache/bigtop/bigtop/$VERSION/bigtop-$VERSION-src.tar.gz$ext
done
|
...
Here is an example email:
No Format |
---|
To: "Bigtop Developers List" <dev-bigtop@incubator.apache.org>
Subject: [VOTE] Release Bigtop version X.Y.Z
This is the first release for Apache Bigtop (incubating), version X.Y.Z.
It fixes the following issues:
https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12311420&version=12318889
*** Please download, test and vote by [3 working days after sending].
Note that we are voting upon the source (tag)
Source and binary files:
http://people.apache.org/~[YOUR USERID]/bigtop-X.Y.Z-RC0
Maven staging repo:
https://repository.apache.org/content/repositories/orgapachebigtop-[YOUR REPOSITORY ID]
The tag to be voted upon:
http://svn.apache.org/repos/asf/incubator/bigtop/tags/release-X.Y.Z
Whirr's KEYS file containing PGP keys we use to sign the release:
http://svn.apache.org/repos/asf/incubator/bigtop/dist/KEYS
|
...
This step makes the artifacts available on the mirrors.
No Format |
---|
ssh people.apache.org
VERSION=X.Y.Z
CANDIDATE=C
svn co https://dist.apache.org/repos/dist/release/bigtop
cd bigtop
cp -r ~/public_html/bigtop-$VERSION-RC$CANDIDATE bigtop-$VERSION
rm stable
ln -s bigtop-$VERSION stable
svn commit
|
...
Build and Deploy Site
No Format |
---|
mvn site-deploy
|
This will deploy the generated website to /www/bigtop.apache.org/ on people.apache.org. You can SSH there to check that things look OK.
...
Send an email to announce@apache.org (the from: address must be @apache.org). E.g.
No Format |
---|
To: announce@apache.org, bigtop-user@incubator.apache.org, bigtop-dev@incubator.apache.org
Subject: [ANNOUNCE] Apache Bigtop X.Y.Z released
The Apache Bigtop (incubating) team is pleased to announce the release of Bigtop X.Y.Z.
The release is available here:
http://www.apache.org/dyn/closer.cgi/bigtop/
The full change log is available here:
https://issues.apache.org/jira/browse/BIGTOP/fixforversion/12315111
We welcome your help and feedback. For more information on how to
report problems, and to get involved, visit the project website at
http://incubator.apache.org/bigtop
The Apache Bigtop Team
|
...