Author: smarru
Date: Sun Oct 28 04:24:00 2012
New Revision: 1402927
URL: http://svn.apache.org/viewvc?rev=1402927&view=rev
Log:
updating TLP release instructions
Added:
airavata/site/trunk/content/development/release-discuss.txt
airavata/site/trunk/content/development/release-vote.txt
Modified:
airavata/site/trunk/content/development/release-management.mdtext
Added: airavata/site/trunk/content/development/release-discuss.txt
URL:
http://svn.apache.org/viewvc/airavata/site/trunk/content/development/release-discuss.txt?rev=1402927&view=auto
==============================================================================
--- airavata/site/trunk/content/development/release-discuss.txt (added)
+++ airavata/site/trunk/content/development/release-discuss.txt Sun Oct 28
04:24:00 2012
@@ -0,0 +1,20 @@
+To: [email protected]
+Subject: [DISCUSS] Apache Airavata ${version} RC{number}
+
+Discussion thread for vote on Apache Airavata ${version} release candidate.
+
+If you have any questions or feedback or to post results of validating the
release, please reply to this thread. Once you verify the release, please post
your vote to the VOTE thread.
+
+For reference, the Apache release guide -
http://www.apache.org/dev/release.html
+
+Some tips to validate the release before you vote:
+
+* Download the binary version and run the 5 minute or 10 minute tutorial as
described in README and website.
+* Download the source files from compressed files and release tag and build
(which includes tests).
+* Verify the distribution for the required LICENSE and NOTICE files
+* Verify if all the staged files are signed and the signature is verifiable.
+* Verify if the signing key in the project's KEYS file is hosted on a public
server
+
+Thanks for your time in validating the release and voting,
+{Release Manger}
+(On Behalf of Airavata PMC)
\ No newline at end of file
Modified: airavata/site/trunk/content/development/release-management.mdtext
URL:
http://svn.apache.org/viewvc/airavata/site/trunk/content/development/release-management.mdtext?rev=1402927&r1=1402926&r2=1402927&view=diff
==============================================================================
--- airavata/site/trunk/content/development/release-management.mdtext (original)
+++ airavata/site/trunk/content/development/release-management.mdtext Sun Oct
28 04:24:00 2012
@@ -47,9 +47,9 @@ The steps can be summerized as:
* Airavata requires Maven 3 or later to build and release
* It is encouraged to use maven's password encryption capabilities and set the
gpg password in
~/.m2/settings.xml. Detailed instructions are at [Publishing Maven
Artifacts][maven-artificats]
-* Performing release will require maven to run series of commands, the
heapsize has to be increased
-to avoid out of memory exceptions. For bash shell: `export
MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=256m"`.
-For c shell: `setenv MAVEN_OPTS "-Xmx1024m -XX:MaxPermSize=256m"`.
+* Performing release will require maven to run series of commands, the
heapsize has to be increased to avoid out of memory exceptions.
+* Bash Shell: `export MAVEN_OPTS="-Xmx1024m
-XX:MaxPermSize=256m"`.
+* C Shell: `setenv MAVEN_OPTS "-Xmx1024m -XX:MaxPermSize=256m"`.
<a name="release-process"></a>
#### Release Process
@@ -67,11 +67,16 @@ For c shell: `setenv MAVEN_OPTS "-Xmx102
3. Checkout a clean copy of the trunk to release using command line svn.
*Do not use Eclipse to do the checkout. The extra dot (.) files created by
Eclipse throws off the rat:check processing.*
+
+ `svn co https://svn.apache.org/repos/asf/airavata/trunk airavata-trunk`
+
+4. Verify the source has the required license headers before trying to
release:
-4. Verify the source has the required license headers before trying to
release: `mvn -P pedantic verify -DskipTests`
+ `mvn -P pedantic verify -DskipTests=true`
-5. Do a dry run of the release:prepare step:
- `mvn -P apache-release release:prepare -DautoVersionSubmodules=true
-DdryRun=true`
+5. Do a dry run of the release:prepare step:
+
+ `mvn -P apache-release release:prepare
-DautoVersionSubmodules=true -DdryRun=true`
The dry run will not commit any changes back to SVN and gives you the
opportunity to verify that the release process will complete as expected. You
will be prompted for the following information :
@@ -90,19 +95,21 @@ For c shell: `setenv MAVEN_OPTS "-Xmx102
* Check release.properties and make sure that the scm properties have the
right version. Sometimes the scm location can be the previous version not the
next version.
* Verify signatures ([Verifying release signatures](#verify_signatures))
-7. Once any failures or required updates have been committed to svn, rollback
the release prepare files: `mvn -P apache-release release:rollback`
+7. Once any failures or required updates have been committed to svn, rollback
the release prepare files:
+
+ `mvn -P apache-release release:rollback`
-8. Prepare the release
- * Run the "release:prepare" step for real this time. You'll be prompted
for the same version information.
- `mvn -P apache-release release:prepare -DautoVersionSubmodules=true`
- * Backup (zip or tar) your local release candidate directory in case
you need to rollback the release after the next step is performed.
+8. Prepare the release: Run the "release:prepare" step for real this time.
You'll be prompted for the same version information.
+
+ `mvn -P apache-release release:prepare
-DautoVersionSubmodules=true`
+ Backup (zip or tar) your local release candidate directory in case you
need to rollback the release after the next step is performed.
9. Perform the release
* This step will create a maven staging repository and site for use in
testing and voting.
- `mvn release:perform -Papache-release`
+
+ `mvn release:perform -Papache-release`
- * If your local OS userid doesn't match your Apache userid, then you'll
have to also override the value provided by the OS to Maven for the site-deploy
step to work. This is known to work for Linux, but not for Mac and unknown for
Windows.*
- -Duser.name=[your_apache_uid]
+ * If your local OS userid doesn't match your Apache userid, then you'll
have to also override the value provided by the OS to Maven for the site-deploy
step to work: -Duser.name=[your_apache_uid] --This is known to work for Linux,
but not for Mac and unknown for Windows--.
10. Verify the Nexus release artifacts
@@ -121,27 +128,31 @@ For c shell: `setenv MAVEN_OPTS "-Xmx102
11. Sign the binary artifacts
* $ `cd modules/distribution/target`
- * $ `gpg -ab
apache-airavata-*${project.version}*-incubating-bin.tar.gz`
- * $ `gpg -ab apache-airavata-*${project.version}*-incubating-bin.zip`
- * $ `gpg --print-md SHA512
apache-airavata-*${project.version}*-incubating-bin.tar.gz >
apache-airavata-*${project.version}*-incubating-bin.tar.gz.sha`
- * $ `gpg --print-md SHA512
apache-airavata-*${project.version}*-incubating-bin.zip >
apache-airavata-*${project.version}*-incubating-bin.zip.sha`
- * $ `gpg --print-md MD5
apache-airavata-*${project.version}*-incubating-bin.tar.gz >
apache-airavata-*${project.version}*-incubating-bin.tar.gz.md5`
- * $ `gpg --print-md MD5
apache-airavata-*${project.version}*-incubating-bin.zip >
apache-airavata-*${project.version}*-incubating-bin.zip.md5`
-
-12. Stage the source and binary artifacts to a web staging area
- * $ `ssh people.apache.org mkdir
/www/people.apache.org/builds/airavata/${project.version}`
- * $ `scp .apache-airavata-*${project.version}*-incubating-bin.zip*
${user.name}@people.apache.org:/www/people.apache.org/builds/airavata/${project.version}/`
- * $ `ssh people.apache.org cd
/www/people.apache.org/builds/airavata/${project.version}`
- * $ `wget
https://repository.apache.org/content/repositories/releases/org/apache/airavata/${project.name}/${project.version}/${project.name}-${project.version}-source-release.zip`
- * $ `wget
https://repository.apache.org/content/repositories/releases/org/apache/airavata/${project.name}/${project.version}/${project.name}-${project.version}-source-release.zip.asc`
- * $ `wget
https://repository.apache.org/content/repositories/releases/org/apache/airavata/${project.name}/${project.version}/${project.name}-${project.version}-source-release.zip.md5
`
- * $ `wget
https://repository.apache.org/content/repositories/releases/org/apache/airavata/${project.name}/${project.version}/${project.name}-${project.version}-source-release.zip.sha1`
- * Verify they are downloadable from
http://people.apache.org/builds/airavata/${project.version}/
+ * $ `gpg -ab apache-airavata-*${project.version}*-bin.tar.gz`
+ * $ `gpg -ab apache-airavata-*${project.version}*-bin.zip`
+ * $ `gpg --print-md SHA512
apache-airavata-*${project.version}*-bin.tar.gz >
apache-airavata-*${project.version}*-bin.tar.gz.sha`
+ * $ `gpg --print-md SHA512
apache-airavata-*${project.version}*-bin.zip >
apache-airavata-*${project.version}*-bin.zip.sha`
+ * $ `gpg --print-md MD5
apache-airavata-*${project.version}*-bin.tar.gz >
apache-airavata-*${project.version}*-bin.tar.gz.md5`
+ * $ `gpg --print-md MD5 apache-airavata-*${project.version}*-bin.zip >
apache-airavata-*${project.version}*-bin.zip.md5`
+
+12. Stage the source and binary artifacts to the dist development repository
+
+ * Checkout Airavata development dist area:
+
+ `svn co https://dist.apache.org/repos/dist/dev/airavata
airavata-dev-dist`
+
+ * Create the directory for ${project.version} and RC{number} within it.
The RC number corresponds to the current release attempt.
+ * Copy the source and binaries into dist area.
+ * Copy the source and binaries into the development dist RC
area created above.
+ * Sources and signed artificats can be downloaded from staging
repo
https://repository.apache.org/content/groups/staging/org/apache/airavata/airavata/${project.version}.
+ * Source artifacts should include
airavata-{project.version}-source-release.zip,
airavata-{project.version}-source-release.zip.asc,
airavata-{project.version}-source-release.zip.sha,
airavata-{project.version}-source-release.zip.md5
+ * Binaries and gpg signed artificats from step 11.
+ * Verify they are downloadable from
https://dist.apache.org/repos/dist/dev/airavata/${project.version}/RC{number}.
13. Put the release candidate up for a vote
1. Create a VOTE email thread on dev@ to record votes as replies, like
[this](release-vote.txt)
2. Create a DISCUSS email thread on dev@ for any vote questions,
[this](release-discuss.txt)
- 3. Perform a review of the release and cast your vote. For elaborate
instructions, please consult [Apache Release FAQ][release-faq] and [Incubator
Release Management][inc-release-mgmt] Guides.
+ 3. Perform a review of the release and cast your vote. For elaborate
instructions, please consult [Apache Release FAQ][release-faq].
4. A -1 vote does not necessarily mean that the vote must be redone,
however it is usually a good idea to rollback the release if a -1 vote is
received. See - Recovering from a vetoed release
5. After the vote has been open for at least 72 hours, has at least three
+1 PMC votes and no -1 votes, then post the results to the vote thread by -
@@ -158,7 +169,7 @@ For c shell: `setenv MAVEN_OPTS "-Xmx102
2. Checkin the source and binary artifcats into distribution svn which
will be pulled by all mirrors within 24 hours.
- * $ `svn co
https://dist.apache.org/repos/dist/release/incubator/airavata
./airavata-releases` (KEEP this directory until after the release process has
been completed)
+ * $ `svn co https://dist.apache.org/repos/dist/release/airavata
./airavata-releases` (KEEP this directory until after the release process has
been completed)
* $ `cd ./airavata-releases`
* $ `scp
people.apache.org:/www/people.apache.org/builds/airavata/${project.version}/*
./`
* $ `svn add ${project.name}-*`
@@ -185,7 +196,7 @@ For c shell: `setenv MAVEN_OPTS "-Xmx102
16. Announcing the release
* Make a news announcement on the Airavata homepage.
- * Make an announcement about the release on the
[email protected], and [email protected].
+ * Make an announcement about the release on the
[email protected], [email protected], and [email protected].
####Recovering from a vetoed release
@@ -226,7 +237,6 @@ gpg: Good signature from ...
gpg: Signature made ...
[release-faq]: http://www.apache.org/dev/release.html
-[asf-profile]: https://id.apache.org/
[gpg-keys]: http://www.apache.org/dev/openpgp.html
[release-signing]: http://www.apache.org/dev/release-signing.html
[surfnet-pgp]: http://pgp.surfnet.nl:11371/
Added: airavata/site/trunk/content/development/release-vote.txt
URL:
http://svn.apache.org/viewvc/airavata/site/trunk/content/development/release-vote.txt?rev=1402927&view=auto
==============================================================================
--- airavata/site/trunk/content/development/release-vote.txt (added)
+++ airavata/site/trunk/content/development/release-vote.txt Sun Oct 28
04:24:00 2012
@@ -0,0 +1,34 @@
+To: [email protected]
+Subject: [VOTE] Apache Airavata ${version} RC{number}
+
+Apache Airavata PMC is pleased to call for a vote on the following Apache
Airavata ${version} release candidate artifacts:
+
+Detailed change log/release notes:
+https://svn.apache.org/repos/asf/airavata/tags/airavata-${version}/RELEASE_NOTES
+
+All Release Artifacts:
+https://dist.apache.org/repos/dist/dev/airavata/${version}/RC{number}/
+
+PGP release keys (signed using {ReleaseManagerKey}):
+https://svn.apache.org/repos/asf/airavata/KEYS
+
+Specific URL's:
+
+SVN source tag ($revision_number):
+https://svn.apache.org/repos/asf/airavata/tags/airavata-${version}/
+
+Source release:
+https://dist.apache.org/repos/dist/dev/airavata/${version}/RC{number}/airavata-{project.version}-source-release.zip
+
+Binary Artifacts:
+https://dist.apache.org/repos/dist/dev/airavata/${version}/RC{number}/apache-airavata-${project.version}-bin.tar.gz
+https://dist.apache.org/repos/dist/dev/airavata/${version}/RC{number}/apache-airavata-${project.version}-bin.zip
+
+Maven staging repo:
+https://repository.apache.org/content/repositories/orgapacheairavata-{XXX}/
+
+Please verify the artifacts and vote. The vote will be open for 72 hours.
+
+[ ] +1 approve
+[ ] +0 no opinion
+[ ] -1 disapprove (and reason why)