Author: desruisseaux
Date: Thu Feb 5 15:00:12 2015
New Revision: 1657596
URL: http://svn.apache.org/r1657596
Log:
Update the release process page according experience gained today.
Modified:
sis/site/trunk/content/release-management.mdtext
Modified: sis/site/trunk/content/release-management.mdtext
URL:
http://svn.apache.org/viewvc/sis/site/trunk/content/release-management.mdtext?rev=1657596&r1=1657595&r2=1657596&view=diff
==============================================================================
--- sis/site/trunk/content/release-management.mdtext [UTF-8] (original)
+++ sis/site/trunk/content/release-management.mdtext [UTF-8] Thu Feb 5
15:00:12 2015
@@ -49,6 +49,7 @@ the current release attempt. Those versi
The key ID value can be found be executing `gpg --list-keys`.
The boot class path value is highly system-dependent. Some examples are:
+ * `/usr/lib/jvm/java-6/jre/lib/rt.jar` on some Linux distributions (replace
`java-6` by the actual directory name).
* `/System/Library/Frameworks/JavaVM.framework/Classes/classes.jar` on MacOS.
@@ -78,6 +79,18 @@ in this page shall be adjusted according
+Java updates {#java-update}
+------------------------------
+
+While we need a JDK6 installation for the `bootclasspath` option, we do not
recommend to use it for generating
+the binaries since JDK6 has reached its end of public updates (but not the end
of commercial support).
+We recommend to create the release with JDK7 or JDK8 instead. Make sure that
the JDK installation
+to be used for the release has been updated recently, since compilers may
receive critical bug fixes.
+For example the `javadoc` tool of older JDK versions was known to generate
HTML pages with a vulnerability in them.
+
+
+
+
Prepare site and source code {#prepare-source}
=================================================
@@ -161,10 +174,12 @@ Open the root `pom.xml` file in an edito
In
`core/sis-utility/src/main/java/org/apache/sis/internal/system/Supervisor.java`,
consider setting
the `ENABLED` flag to `false`. This policy may be revised in future SIS
releases.
-Remove the workaround for the bug in JDK6 `javadoc`, since we perform release
with JDK7 or JDK8:
+Remove the workaround for the bug in JDK6 `javadoc`, since we perform release
with JDK7 or JDK8.
+Remove also the modules that are not yet ready for a release:
:::bash
svn remove core/sis-build-helper/src/main/java/org/opengis
+ svn remove application/sis-javafx
Commit the changes on the branch:
@@ -250,8 +265,7 @@ Clean the branch, since we will not need
:::bash
cd $BRANCH_DIR
- mvn release:clean
- mvn clean
+ mvn clean release:clean
@@ -265,7 +279,7 @@ additional test worth to do before deplo
:::bash
cd $TAG_DIR
- mvn clean install
+ mvn clean install --define bootclasspath=$BOOTCLASSPATH
mvn org.apache.sis.core:sis-build-helper:$NEW_VERSION:dist --non-recursive
If the above succeeded, deploy. We temporarily delete the Maven site
descriptors (`site.xml`)
@@ -274,7 +288,7 @@ download site descriptors from a Maven r
:::bash
find . -name "site.xml" -delete
- mvn deploy --activate-profiles apache-release
+ mvn deploy --activate-profiles apache-release --define
bootclasspath=$BOOTCLASSPATH
svn revert . --recursive
@@ -305,7 +319,7 @@ Additional cleaning:
Close the Nexus staging repository:
* Click the checkboxes for the open staging repositories
(`org.apache.sis-<id>`) and press _Close_ in the menu bar.
- * In the description field, enter "`SIS $NEW_VERSION-$RELEASE_CANDIDATE`"
+ * In the description field, enter "`SIS $NEW_VERSION-RC$RELEASE_CANDIDATE`"
(replace `$NEW_VERSION` and `$RELEASE_CANDIDATE` by appropriate values.
This will not be done automatically since this field box is not our bash
shell!).
* Click on the `org.apache.sis-<id>` link in order to get the URL to the
temporary Maven repository created by Nexus.
@@ -318,9 +332,11 @@ the availability of this temporary repos
Test the Nexus release artifacts {#nexus-text}
-------------------------------------------------
-Go to the test Maven project. Open the root `pom.xml` file, go to the `<url>`
declaration and replace value by
-the URL of the temporary Maven repository created by Nexus. Usually, only the
3 last digits need to be updated.
-Set the `<version>` number to the SIS release to be tested.
+Go to the test Maven project.
+Open the root `pom.xml` file and set the `<version>` number to the SIS release
to be tested.
+Then go to the `<url>` declaration of the first `<repository>` and replace
value by the URL
+of the temporary Maven repository created by Nexus.
+Usually, only the 3 last digits need to be updated.
:::bash
cd ../../release-test/maven
@@ -332,6 +348,7 @@ This will also verify the checksums.
rm -r ~/.m2/repository/org/apache/sis
mvn package --strict-checksums
+ mvn clean
@@ -346,7 +363,7 @@ If JDK8 is *not* used, then omit the `cp
:::bash
cp ../../JDK8/src/main/javadoc/stylesheet.css src/main/javadoc/
- mvn site --define skipTests=true
+ mvn javadoc:aggregate --define bootclasspath=$BOOTCLASSPATH
svn revert src/main/javadoc/stylesheet.css
cd target/site
zip -9 -r apache-sis-$NEW_VERSION-doc.zip apidocs