You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by se...@apache.org on 2015/05/31 23:17:35 UTC

svn commit: r1682795 - /directory/studio/trunk/README.md

Author: seelmann
Date: Sun May 31 21:17:35 2015
New Revision: 1682795

URL: http://svn.apache.org/r1682795
Log:
Update release process

Modified:
    directory/studio/trunk/README.md

Modified: directory/studio/trunk/README.md
URL: http://svn.apache.org/viewvc/directory/studio/trunk/README.md?rev=1682795&r1=1682794&r2=1682795&view=diff
==============================================================================
--- directory/studio/trunk/README.md (original)
+++ directory/studio/trunk/README.md Sun May 31 21:17:35 2015
@@ -91,29 +91,78 @@ The build produces binaries for all plat
 
 ## Release
 
-Work in progress...
+tentative, not fully tested yet...
+
+### Release artifacts
+
+We release the following artifacts:
+
+* Source zip (the main artifact we vote on)
+* Maven artifacts
+    * poms
+    * plugins: pom, jar, javadoc, src
+    * features: pom, jar, src
+    * helps: pom, jar, src
+* P2 repository zip
+* Product archives Mac OS X, Linux (32+64bit), Windows (32+64bit)
+* Userguides
+
 
 ### Preparation
 
-Check legal files
+Test the release build: rat check, javadoc and source jar generation, GPG signing, userguide generation
 
-    mvn apache-rat:check
+    mvn -f pom-first.xml clean install
+    mvn -Papache-release -Duserguides clean install
 
 Run UI tests (if possilbe on all platforms)
 
     mvn clean install -Denable-ui-tests
 
 
-### 
+### Release steps
+
+As Tycho doesn't support the maven-release-plugin the release process is as follows:
+
+#### Define release version
+
+We use a release number scheme that suites for both, Maven and Eclipse.
+
+    <MAJOR>.<MINOR>.<PATCH>.v<YYYYMMDD>[-M<X>|RC<X>]
+
+Example for milestone version: `2.0.0.v20150529-M9`
+Example for GA version: `2.0.1.v20150529`
+
+Define a variable for later use:
+
+    export VERSION=2.0.0.v20150529-M9
+
+#### Create and checkout branch
+
+    svn copy https://svn.apache.org/repos/asf/directory/studio/trunk https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION -m "Prepare release $VERSION"
+
+#### Set the version
+
+    find . -name pom-first.xml | xargs sed -i 's/2.0.0-SNAPSHOT/'$VERSION'/'
+    find . -name pom-first.xml | xargs sed -i 's/2.0.0.qualifier/'$VERSION'/'
+    mvn -f pom-first.xml clean install
+    mvn org.eclipse.tycho:tycho-versions-plugin:0.22.0:set-version -DnewVersion=$VERSION
+
+#### Commit
+
+    svn commit -m "Set version numbers for release $VERSION"
+
+### Create and checkout tag
+
+    svn copy https://svn.apache.org/repos/asf/directory/studio/branches/$VERSION https://svn.apache.org/repos/asf/directory/studio/tags/$VERSION -m "Tag release $VERSION"
 
-Generate help plugins
+#### Build the release
 
-    cd helps
-    mvn clean install -Duserguides
+    mvn -f pom-first.xml clean install
+    mvn -Papache-release -Puserguides clean install/deploy
 
-Update site (p2 repo) is generated in product/target/repository
 
-Distribution files are generated in product/target/products
+tbc.
 
 
 ## Misc tips and tricks