sis-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From desruisse...@apache.org
Subject svn commit: r1505657 - in /sis/branches/JDK7/src/site/apt: release-process.apt release-setup.apt
Date Mon, 22 Jul 2013 11:16:29 GMT
Author: desruisseaux
Date: Mon Jul 22 11:16:29 2013
New Revision: 1505657

URL: http://svn.apache.org/r1505657
Log:
More release instructions. The vote procedure is a copy of Suresh's "release management" page,
adapted to APT format.

Modified:
    sis/branches/JDK7/src/site/apt/release-process.apt
    sis/branches/JDK7/src/site/apt/release-setup.apt

Modified: sis/branches/JDK7/src/site/apt/release-process.apt
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/src/site/apt/release-process.apt?rev=1505657&r1=1505656&r2=1505657&view=diff
==============================================================================
--- sis/branches/JDK7/src/site/apt/release-process.apt [UTF-8] (original)
+++ sis/branches/JDK7/src/site/apt/release-process.apt [UTF-8] Mon Jul 22 11:16:29 2013
@@ -37,19 +37,39 @@ Release Process
 
    * A Unix shell (commands documented in this page have not been tested on Windows).
 
-   * GNU GPG, Maven, Ant, Java and the Java compiler are available on the path.
+   * Subversion, GNU GPG, ZIP, Maven, Ant, Java and the Java compiler are available on the
path.
 
    * The {{{./release-setup.html}release setup}} steps have been executed once.
 
   For all instructions in this page, <<<$OLD_VERSION>>> and <<<$NEW_VERSION>>>
stand for the version
-  number of the previous and the new release respectively. Those versions shall be set on
the command
-  line like below (Unix):
+  number of the previous and the new release respectively, and <<<$RELEASE_CANDIDATE>>>
stands for
+  the current release attempt. Those versions shall be set on the command line like below
(Unix):
 
-----------------------
+--------------------------
 export OLD_VERSION=0.3
 export NEW_VERSION=0.4
-----------------------
+export RELEASE_CANDIDATE=1
+--------------------------
+
+** Directory layout
 
+  The steps described in this page assume the following directory layout (some directories
will be created as
+  a result of the steps). Any other layout can be used. However if the layout differ, then
the relative paths
+  in this page shall be adjusted accordingly.
+
+-----------------------------
+<any root directory for SIS>
+├─ trunk
+├─ branches
+│  └─ $NEW_VERSION
+├─ tags
+│  └─ $NEW_VERSION
+│     └─ target
+│        └─ bundles
+└─ distribution
+   └─ $NEW_VERSION
+      └─ RC$RELEASE_CANDIDATE
+-----------------------------
 
 
 * Update JIRA tasks and release notes.
@@ -141,7 +161,7 @@ svn commit --message "Prepare the branch
 -----------------------------------------------------------------------
 
 
-** Verify the branch content
+* Verify the branch content
 
   Try a dry run of the <<<release:prepare>>> goal. This goals checks for
<<<SNAPSHOT>>> dependencies in <<<pom.xml>>> files.
   It will not complete the prepare goal until all <<<SNAPSHOT>>> dependencies
are resolved.
@@ -222,7 +242,7 @@ mvn release:prepare --define releaseVers
 cd ../../tags
 svn checkout https://svn.apache.org/repos/asf/sis/tags/$NEW_VERSION
 cd $NEW_VERSION
-mvn clean install --define skipTests
+mvn clean install --define skipTests=true
 mvn site deploy --activate-profiles apache-release
 --------------------------------------------------
 
@@ -231,4 +251,98 @@ mvn site deploy --activate-profiles apac
 
 
 
-* Verify the Nexus release artifacts
+* Verify and close the Nexus release artifacts
+
+  Verify the staged artifacts in the {{{https://repository.apache.org/index.html}Nexus repository}}.
+  The artifacts can be found under _Build Promotion_ → _Staging repositories_ → _Name
column_ --> <<<org.apache.sis>>>.
+  Navigate through the artifact tree and make sure that all javadoc, source, test and jar
files have <<<.asc>>> (GPG signature)
+  and <<<.md5>>> files.
+
+  Additional references about signatures:
+
+     * {{{http://people.apache.org/~henkp/repo/faq.html}Maven repository PGP signature checker
FAQ}}
+
+     * {{{http://www.apache.org/dev/release-signing.html}Release signing}}
+       (cited in the {{{./release-setup.html}Release setup}} page)
+
+
+  Close the nexus staging repository: click the checkbox for the open staging repositories
+  (<<<org.apache.sis-<module>>>>) and press <Close> in the
menu bar.
+
+
+
+* Stage the binary and javadoc artifacts to the distribution development repository
+
+  Create the directory for the new version and release candidate within the distribution
directory.
+  The <<<RC>>> number shall correspond to the current release attempt.
+
+--------------------------------------------------------------------------
+mkdir ../../distribution/$NEW_VERSION
+--------------------------------------------------------------------------
+
+  Create and put the binary artifact in the distribution directory:
+
+----------------------------------------------------------------------
+mvn org.apache.sis:sis-build-helper:$NEW_VERSION:pack --non-recursive
+mv target/bundles ../../distribution/$NEW_VERSION/RC$RELEASE_CANDIDATE
+----------------------------------------------------------------------
+
+  Create and put the javadoc in the distribution directory:
+
+---------------------------------------------------------------------------------------------------------
+cd target/site
+zip -9 -r ../../../../distribution/$NEW_VERSION/RC$RELEASE_CANDIDATE/sis-$NEW_VERSION-apidocs.zip
apidocs
+cd ../..
+---------------------------------------------------------------------------------------------------------
+
+  Create and put the source code in the distribution directory:
+
+-------------------------------------------------------------------------------------
+svn export . ../../distribution/$NEW_VERSION/RC$RELEASE_CANDIDATE/src --native-eol LF
+cd ../../distribution/$NEW_VERSION/RC$RELEASE_CANDIDATE
+zip -9 -r sis-$NEW_VERSION-src.zip src
+rm -r src
+-------------------------------------------------------------------------------------
+
+  Sign the source, javadoc and binary artifacts:
+
+-----------------------------------------------------------------------------------------
+gpg --armor --detach-sign sis-$NEW_VERSION.src.zip
+gpg --print-md SHA512     sis-$NEW_VERSION.src.zip > sis-$NEW_VERSION.src.zip.sha
+gpg --print-md MD5        sis-$NEW_VERSION.src.zip > sis-$NEW_VERSION.src.zip.md5
+gpg --armor --detach-sign sis-$NEW_VERSION.apidocs.zip
+gpg --print-md SHA512     sis-$NEW_VERSION.apidocs.zip > sis-$NEW_VERSION.apidocs.zip.sha
+gpg --print-md MD5        sis-$NEW_VERSION.apidocs.zip > sis-$NEW_VERSION.apidocs.zip.md5
+gpg --armor --detach-sign sis-$NEW_VERSION.pack.gz
+gpg --print-md SHA512     sis-$NEW_VERSION.pack.gz > sis-$NEW_VERSION.pack.gz.sha
+gpg --print-md MD5        sis-$NEW_VERSION.pack.gz > sis-$NEW_VERSION.pack.gz.md5
+-----------------------------------------------------------------------------------------
+
+  Commit:
+
+---------------------------------------------------------------
+cd ../..
+svn add $NEW_VERSION
+svn commit --message "SIS release candidate $RELEASE_CANDIDATE"
+---------------------------------------------------------------
+
+  Verify that the files are downloadable from the {{http://dist.apache.org/repos/dist/dev/sis/}}
sub-directory.
+
+
+* Put the release candidate up for a vote
+
+     * Create a VOTE email thread on <<<dev@>>> to record votes as replies.
+
+     * Create a DISCUSS email thread on <<<dev@>>> for any vote questions.
+
+     * Perform a review of the release and cast your vote:
+
+         * 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.
+
+     * 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:
+
+         * Reply to the initial email and prepend to the original subject "[RESULT]"
+
+         * Include a list of everyone who voted +1, 0 or -1.

Modified: sis/branches/JDK7/src/site/apt/release-setup.apt
URL: http://svn.apache.org/viewvc/sis/branches/JDK7/src/site/apt/release-setup.apt?rev=1505657&r1=1505656&r2=1505657&view=diff
==============================================================================
--- sis/branches/JDK7/src/site/apt/release-setup.apt [UTF-8] (original)
+++ sis/branches/JDK7/src/site/apt/release-setup.apt [UTF-8] Mon Jul 22 11:16:29 2013
@@ -30,10 +30,36 @@ One time release management setup
 %{toc|fromDepth=2|toDepth=3}
 
 
+* Directory layout (including Subversion checkout)
+
+  The steps described in the <Release process> page assumes the following directory
layout.
+  Some directories are SVN checkout, other are ordinary directories. Any other layout can
be used.
+  However in the later case, all relative paths in the {{{./release-process.html}Release
process}}
+  page will need to be adjusted accordingly.
+
++---------------------------+
+<any root directory for SIS>
+├─ trunk
+├─ branches
+├─ tags
+└─ distribution
++---------------------------+
+
+  Create the above directory structure as below:
+
+--------------------------------------------------------------------
+svn checkout https://svn.apache.org/repos/asf/sis/trunk
+svn checkout https://dist.apache.org/repos/dist/dev/sis distribution
+mkdir branches
+mkdir tags
+--------------------------------------------------------------------
+
+
+
 * Shell configuration
 
   It is better for Unix shells to contain the following line in their initialization file
-  (typically {{\~/.bashrc}} or {{\~/.profile}}, where {{\~}} stands for the user's home directory):
+  (typically <<<\~/.bashrc>>> or <<<\~/.profile>>>, where
<<<\~>>> stands for the user's home directory):
 
 ---------------------
 export GPG_TTY=$(tty)



Mime
View raw message