You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tamaya.apache.org by pl...@apache.org on 2016/04/25 20:15:02 UTC
incubator-tamaya git commit: Overhauled the release guide.
Repository: incubator-tamaya
Updated Branches:
refs/heads/master cb8f255d4 -> 01b1efaf8
Overhauled the release guide.
Project: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/commit/01b1efaf
Tree: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/tree/01b1efaf
Diff: http://git-wip-us.apache.org/repos/asf/incubator-tamaya/diff/01b1efaf
Branch: refs/heads/master
Commit: 01b1efaf8f25cf562fc7a81d6c1346b183a1ef18
Parents: cb8f255
Author: Oliver B. Fischer <pl...@apache.org>
Authored: Mon Apr 25 20:14:52 2016 +0200
Committer: Oliver B. Fischer <pl...@apache.org>
Committed: Mon Apr 25 20:14:52 2016 +0200
----------------------------------------------------------------------
src/site/asciidoc/release-guide.adoc | 260 +++++++++++++++---------------
1 file changed, 127 insertions(+), 133 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-tamaya/blob/01b1efaf/src/site/asciidoc/release-guide.adoc
----------------------------------------------------------------------
diff --git a/src/site/asciidoc/release-guide.adoc b/src/site/asciidoc/release-guide.adoc
index 110e7d6..f620fe4 100644
--- a/src/site/asciidoc/release-guide.adoc
+++ b/src/site/asciidoc/release-guide.adoc
@@ -17,29 +17,31 @@
include::temp-properties-files-for-site/attributes.adoc[]
-== Apache Tamaya: Release Guide
+:sectnums: yes
+
+= Apache Tamaya: Release Guide
Performing a release requires several steps. This document describes each step, so everybody in the committer's
team should be able to perform the release procedure.
-=== Tell the others you would proceed with the release procedure
+== Tell the others you would proceed with the release procedure
[listing,text]
-----------------------------------------
- first steps for the next release
-
- hi @ all,
+----
+first steps for the next release
- if there are no objections, i'll start with the first steps for the next release (review, documentation,...).
- it would be great to start with the release procedure next week.
+Hi @ all,
- regards,
- [name]
-----------------------------------------
+If there are no objections, I'll start with the first steps for
+the next release (review, documentation,...).
+It would be great to start with the release procedure next week.
+Best regards,
+[name]
+----
-=== Check everything is ready
+== Check everything is ready
* Check the jenkins builds.
* Ensure all JIRA-tickets targeting the release are resolved. If not, get in contact with the ticket
@@ -48,41 +50,38 @@ team should be able to perform the release procedure.
** how long it takes to resolve it and if one can help.
-=== Prepare the release
+== Prepare the release
* Create release notes and commit them to `tamaya/readme/` (format `ReleaseNotes-[version].html`)
* Create a release branch in git and switch to this branch:
-==== Using the release plugin
+=== Using the Release Plugin
For performing the release you can use the maven release plugin:
[listing,text]
-----------------------------------------
- git checkout -b vote-tamaya-[release version]
-
- export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
- mvn release:prepare -DdryRun=true -DperformRelease=true
-
- // optionally pass GPG params for signing with: -Darguments="-Dgpg.keyname=1336D3E6 -Dgpg.passphrase=XXXXXX"
-
- //copy prepared workspace (to continue faster if an upload fails in the next step)
-----------------------------------------
+----
+$ git checkout -b vote-tamaya-[release version]
+$ export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
+$ mvn release:prepare -DdryRun=true -DperformRelease=true
+# optionally pass GPG params for signing with: -Darguments="-Dgpg.keyname=1336D3E6 -Dgpg.passphrase=XXXXXX"
+# copy prepared workspace (to continue faster if an upload fails in the next step)
+----
* If something fails you may switch to the master branch, fix whatever is needed and rebase your release branch to
- accomodate the latest changes done.
+ accommodate the latest changes done.
* On success you can check the release packages from `dist/target`.
* If everything looks good you can proceed with the release:
[listing,text]
-----------------------------------------
- export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
- mvn release:prepare -DperformRelease=true
- mvn release:perform -DperformRelease=true
-----------------------------------------
+----
+$ export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
+$ mvn release:prepare -DperformRelease=true
+$ mvn release:perform -DperformRelease=true
+----
-==== Preparing the release without the Release Plugin
+=== Preparing the release without the Release Plugin
The release plugin is great, but in some cases it breaks even, when release:prepare -DdryRun=true was successful.
Preparing the release vote without the release plugin is stright forward:
@@ -91,109 +90,103 @@ Preparing the release vote without the release plugin is stright forward:
* Then us maven and git commands to prepare the release:
[listing,text]
-----------------------------------------
- git checkout -b vote-tamaya-[release version]
-
- export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
- mvn versions:set versions:commit -DnewVersion=[release version] -DperformRelease=true
-
- // build the release locally and sign it with your certs
- mvn clean install -DperformRelease=true -Dgpg.keyname=1336D3E6 -Dgpg.passphrase=XXXXXX
-
-----------------------------------------
+----
+$ git checkout -b vote-tamaya-[release version]
+$ export MAVEN_OPTS="-Xmx512m -XX:MaxPermSize=200m"
+$ mvn versions:set versions:commit -DnewVersion=[release version] -DperformRelease=true
+# build the release locally and sign it with your certs
+$ mvn clean install -DperformRelease=true -Dgpg.keyname=1336D3E6 -Dgpg.passphrase=XXXXXX
+----
* Check if everything is in place and correct, when finished you can tag and deploy the release...
[listing,text]
-----------------------------------------
-mvn deploy -DperformRelease=true -Dgpg.keyname=1336D3E6 -Dgpg.passphrase=XXXXXX
-----------------------------------------
+----
+$ mvn deploy -DperformRelease=true -Dgpg.keyname=1336D3E6 -Dgpg.passphrase=XXXXXX
+----
* check the created commits including user-name and email
-* login to https://repository.apache.org/ and go to "Staging Repositories"
+* login to https://repository.apache.org/[^] and go to "Staging Repositories"
* check the contents of the newly created tamaya staging repository
* _close_ the repository to let Nexus do its validations
* On success:
* push the release-branch to the git repo
[listing,text]
-----------------------------------------
-git add -A
-git commit -m "Release Prepare: Set release version."
-git tag vote01-[release-version]
-git push --tags
-----------------------------------------
+----
+$ git add -A
+$ git commit -m "Release Prepare: Set release version."
+$ git tag vote01-[release-version]
+$ git push --tags
+----
Finally open the next development version:
[listing,text]
-----------------------------------------
+----
# example: newVersion=0.3-incubating-SNAPSHOT
-mvn version:set versions:commit -DnewVersion=[development-version]
-git add -A
-git commit -m "Release Prepare: Open new development version."
-----------------------------------------
+$ mvn version:set versions:commit -DnewVersion=[development-version]
+$ git add -A
+$ git commit -m "Release Prepare: Open new development version."
+----
* Add the distribution artifacts to the dev repositories:
[listing,text]
-----------------------------------------
- svn co https://dist.apache.org/repos/dist/dev/incubator/tamaya/
- mkdir [version]
- set RELEASE_HOME='pwd'/[version]
- cd PROJECT_ROOT
- cp DISCLAIMER $RELEASE_HOME
- cp NOTICE $RELEASE_HOME
- cp LICENCE $RELEASE_HOME
- cp rat.txt $RELEASE_HOME
-
- // Copy everything from
- // $STAGING_REPO/distribution/0.2-incubating/tamaya-distribution-[version]-distribution-* into $RELEASE_HOME
-
- svn add [version]
- svn commit --username <apacheId>
-----------------------------------------
+----
+$ svn co https://dist.apache.org/repos/dist/dev/incubator/tamaya/
+$ mkdir [version]
+$ set RELEASE_HOME='pwd'/[version]
+$ cd PROJECT_ROOT
+$ cp DISCLAIMER $RELEASE_HOME
+$ cp NOTICE $RELEASE_HOME
+$ cp LICENCE $RELEASE_HOME
+$ cp rat.txt $RELEASE_HOME
+# Copy everything from
+# $STAGING_REPO/distribution/0.2-incubating/tamaya-distribution-[version]-distribution-* into $RELEASE_HOME
+$ svn add [version]
+$ svn commit --username <apacheId>
+----
* Check contents on https://dist.apache.org/repos/dist/dev/incubator/tamaya/[version]
-=== Start the vote
+== Start the vote
[listing,text]
-----------------------------------------
- [VOTE] Release of Apache Tamaya [version]
-
+----
+[VOTE] Release of Apache Tamaya [version]
- Hi,
+Hi,
- I was running the needed tasks to get the [version] release of Apache Tamaya out.
- The artifacts are deployed to Nexus [1] (and [2]) and releases [4].
+I was running the needed tasks to get the [version] release of Apache Tamaya out.
+The artifacts are deployed to Nexus [1] (and [2]) and releases [4].
- The tag is available at [3] and will renamed once the vote passed.
+The tag is available at [3] and will renamed once the vote passed.
- Please take a look at the artifacts and vote!
+Please take a look at the artifacts and vote!
- Please note:
- This vote is a "majority approval" with a minimum of three +1 votes (see [5]).
+Please note:
+This vote is a "majority approval" with a minimum of three +1 votes (see [5]).
- ------------------------------------------------
- [ ] +1 for community members who have reviewed the bits
- [ ] +0
- [ ] -1 for fatal flaws that should cause these bits not to be released, and why..............
- ------------------------------------------------
+------------------------------------------------
+[ ] +1 for community members who have reviewed the bits
+[ ] +0
+[ ] -1 for fatal flaws that should cause these bits not to be released, and why..............
+------------------------------------------------
- Thanks,
- [name]
+Thanks,
+[name]
- [1] https://repository.apache.org/content/repositories/...
- [2] https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.zip
- https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.zip
- [3] https://git1-us-west.apache.org/repos/asf?p=incubator-tamaya.git;a=commit;h=2910da468fce16210e6dd77d8ba23ddbdd434efe
- [4] https://dist.apache.org/repos/dist/dev/incubator/tamaya/[release-version]
- [5] http://www.apache.org/foundation/voting.html#ReleaseVotes
-----------------------------------------
+[1] https://repository.apache.org/content/repositories/...
+[2] https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-source-release.zip
+ https://repository.apache.org/content/repositories/org/apache/tamaya/tamaya-distribution/[version]/tamaya-[version]-bin-release.zip
+[3] https://git1-us-west.apache.org/repos/asf?p=incubator-tamaya.git;a=commit;h=2910da468fce16210e6dd77d8ba23ddbdd434efe
+[4] https://dist.apache.org/repos/dist/dev/incubator/tamaya/[release-version]
+[5] http://www.apache.org/foundation/voting.html#ReleaseVotes
+----
* Announce the Vote
** Create a short link to the release at http://s.apache.org (format Tamaya_[version])
@@ -202,20 +195,20 @@ git commit -m "Release Prepare: Open new development version."
* After 72 hours close the vote write a reult email, e.g.
[listing,text]
-----------------------------------------
- [Result] (was: Re: [VOTE] Release of Apache Tamaya [version])
+----
+[Result] (was: Re: [VOTE] Release of Apache Tamaya [version])
- thank you for voting!
+Thank you for voting!
- X binding +1 votes (pmc):
- [list]
+X binding +1 votes (pmc):
+[list]
- Y non-binding +1 votes:
- [list]
+Y non-binding +1 votes:
+[list]
- Z -1 votes
- [list]
-----------------------------------------
+Z -1 votes
+[list]
+----
* After the vote on the PPMC has been finished and is successful, repeaat the voting process on the
incubator mailing list.
@@ -229,52 +222,53 @@ If the binding majority approved the vote on both lists continue:
* Rename the vote branch:
[listing,text]
-----------------------------------------
- git branch -m vote01-tamaya-[release-version] tamaya-[release-version]
-----------------------------------------
+----
+$ git branch -m vote01-tamaya-[release-version] tamaya-[release-version]
+----
* Add a release tag:
-----------------------------------------
- git tag -a tamaya-[release-version]
-----------------------------------------
+----
+$ git tag -a tamaya-[release-version]
+----
* Merge master with the new prepared version:
[listing,text]
-----------------------------------------
- git checkout master
- git merge tamaya-[release-version]
- git push origin tamaya-[release-version]
- git push origin master
-----------------------------------------
+----
+$ git checkout master
+$ git merge tamaya-[release-version]
+$ git push origin tamaya-[release-version]
+$ git push origin master
+----
* Close the release and corresponding tickets at JIRA
-* Wait some minutes and check `http://repo2.maven.org/maven2/org/apache/tamaya`
+* Wait some minutes and check http://repo2.maven.org/maven2/org/apache/tamaya[^]
* Upload the distribution Artifacts
[listing,text]
-----------------------------------------
- svn co https://dist.apache.org/repos/dist/release/incubator/tamaya/
- mkdir [version]
- // add and commit the artifacts (*source-release.zip, *bin-release.zip + asc, md5, sha1)
- // use the artifacts from:
- // http://repo1.maven.org/maven2/org/apache/tamaya/tamaya-distribution/[version]/
-----------------------------------------
+----
+$ svn co https://dist.apache.org/repos/dist/release/incubator/tamaya/
+$ mkdir [version]
+# add and commit the artifacts (*source-release.zip, *bin-release.zip + asc, md5, sha1)
+# use the artifacts from:
+# http://repo1.maven.org/maven2/org/apache/tamaya/tamaya-distribution/[version]/
+----
-=== Updating the Tamaya Project Site
+== Updating the Tamaya Project Site
Basically the new site should be directly deployable, just execute
[listing,text]
-----------------------------------------
-mvn site site:deploy
-----------------------------------------
+----
+$ mvn site site:deploy
+----
-=== Announce the new version
+== Announce the new version
-Announce the new version on @TamayaConf and other social media channels. Also drop a short mail on the amiling list.
+Announce the new version on @TamayaConf and other social media channels.
+Also drop a short mail on the amiling list.