You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by bu...@apache.org on 2013/10/19 17:31:05 UTC

svn commit: r883351 - in /websites/staging/isis/trunk: cgi-bin/ content/ content/contributors/release-process-one-pager.html content/contributors/release-process.html

Author: buildbot
Date: Sat Oct 19 15:31:05 2013
New Revision: 883351

Log:
Staging update by buildbot for isis

Modified:
    websites/staging/isis/trunk/cgi-bin/   (props changed)
    websites/staging/isis/trunk/content/   (props changed)
    websites/staging/isis/trunk/content/contributors/release-process-one-pager.html
    websites/staging/isis/trunk/content/contributors/release-process.html

Propchange: websites/staging/isis/trunk/cgi-bin/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sat Oct 19 15:31:05 2013
@@ -1 +1 @@
-1532673
+1533775

Propchange: websites/staging/isis/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sat Oct 19 15:31:05 2013
@@ -1 +1 @@
-1532673
+1533775

Modified: websites/staging/isis/trunk/content/contributors/release-process-one-pager.html
==============================================================================
--- websites/staging/isis/trunk/content/contributors/release-process-one-pager.html (original)
+++ websites/staging/isis/trunk/content/contributors/release-process-one-pager.html Sat Oct 19 15:31:05 2013
@@ -289,7 +289,11 @@ mvn clean install -o
 
 <h2>Switch to correct directory</h2>
 
-<p>Switch to the directory containing the (parent of the) artifact(s) to be released, eg:</p>
+<p><div class="note">
+Switch to the directory containing the (parent of the) artifact(s) to be released
+</div></p>
+
+<p>eg:</p>
 
 <pre>
 cd core
@@ -300,24 +304,24 @@ cd core
 <p>Update parent version to non-<code>SNAPSHOT</code> (including tck project, if any):</p>
 
 <pre>
-vi `find . -name pom.xml | grep -v target`
+vi `/bin/find . -name pom.xml | grep -v target`
 </pre>
 
 <p>Newer dependencies:</p>
 
 <pre>
 mvn versions:display-dependency-updates > /tmp/foo
-grep "\->" /tmp/foo | sort -u
+grep "\->" /tmp/foo | /bin/sort -u
 </pre>
 
 <p>Missing license headers in files:</p>
 
 <pre>
 mvn org.apache.rat:apache-rat-plugin:check -D rat.numUnapprovedLicenses=50 -o
-for a in `find . -name rat.txt -print`; do grep '!???' $a; done
+for a in `/bin/find . -name rat.txt -print`; do grep '!???' $a; done
 </pre>
 
-<p>Missing/spurious <code>supplemental-models.xml</code>:</p>
+<p>Missing/spurious <code>supplemental-models.xml</code> (adjust path to the groovy file as required):</p>
 
 <pre>
 mvn license:download-licenses
@@ -326,7 +330,11 @@ groovy ../scripts/checkmissinglicenses.g
 
 <h2>Release</h2>
 
-<p>Prepare then perform (switch to <code>cmd.exe</code> if on Windows):</p>
+<p><div class="note">
+Switch to <code>cmd.exe</code> if on Windows
+</div></p>
+
+<p>Prepare then perform:</p>
 
 <pre>
 mvn release:prepare -P apache-release -D dryRun=true

Modified: websites/staging/isis/trunk/content/contributors/release-process.html
==============================================================================
--- websites/staging/isis/trunk/content/contributors/release-process.html (original)
+++ websites/staging/isis/trunk/content/contributors/release-process.html Sat Oct 19 15:31:05 2013
@@ -277,17 +277,23 @@
 <ul>
 <li><code>core</code></li>
 <li><code>component/objectstore/jdo</code></li>
+<li><code>component/security/file</code></li>
+<li><code>component/security/shiro</code></li>
+<li><code>component/viewer/restfulobjects</code></li>
+<li><code>component/viewer/wicket</code></li>
+<li><code>component/example/archetypes/quickstart_wicket_restful_jdo</code></li>
+<li><code>component/example/archetypes/simple_wicket_restful_jdo</code></li>
+</ul>
+
+<p>Other components, not yet released (but not mothballed yet either) are:</p>
+
+<ul>
 <li><code>component/objectstore/nosql</code></li>
-<li><code>component/objectstore/sql</code></li>
 <li><code>component/objectstore/xml</code></li>
 <li><code>component/profilestore/xml</code></li>
 <li><code>component/progmodel/groovy</code></li>
-<li><code>component/security/ldap</code></li>
-<li><code>component/viewer/bdd</code></li>
 <li><code>component/viewer/dnd</code></li>
-<li><code>component/viewer/restfulobjects</code></li>
 <li><code>component/viewer/scimpi</code></li>
-<li><code>component/viewer/wicket</code></li>
 </ul>
 
 <p>All the non-core components depend on the <code>core</code>, and use the <code>core</code>'s parent <code>pom.xml</code> as their parent pom.</p>
@@ -329,9 +335,9 @@
 
 <p>In order to prepare the release, you'll (need to) have a <code>~/.gnupg</code> directory with the relevant files (<code>gpg.conf</code>, <code>pubring.gpg</code>, <code>secring.gpg</code> etc), and have <code>gpg</code> on your operating system PATH.</p>
 
-<p><div class="note">
-If on Windows, the equivalent directory is <code>c:\users\xxx\appdata\roaming\gnupg</code>.  For <code>gpg</code>, use either <a href="http://cygwin.com">cygwin.com</a> or <a href="http://www.gpg4win.org">gpg4win.org</a>.  Note also that the mSysGit version of <code>gpg</code> (as provided by GitHub's bash client) is not compatible with that provided by cygwin. In other words, even if you normally use mSysGit bash, you may need to cut the release using <code>cmd.exe</code>.
-</div></p>
+<blockquote>
+  <p>If on Windows, the equivalent directory is <code>c:\users\xxx\appdata\roaming\gnupg</code>.  For <code>gpg</code>, use either <a href="http://cygwin.com">cygwin.com</a> or <a href="http://www.gpg4win.org">gpg4win.org</a>.  Note also that the mSysGit version of <code>gpg</code> (as provided by GitHub's bash client) is not compatible with that provided by cygwin. In other words, even if you normally use mSysGit bash, you may need to cut the release using <code>cmd.exe</code>.</p>
+</blockquote>
 
 <h4>Maven <code>settings.xml</code></h4>
 
@@ -353,9 +359,10 @@ If on Windows, the equivalent directory 
 
 <p>where <code>xxxxxxx</code> and <code>yyyyyyy</code> are your Apache LDAP username and password.   For more information, see these <a href="http://www.apache.org/dev/publishing-maven-artifacts.html#dev-env">ASF docs</a>.</p>
 
-<p><div class="note">
-It is also possible to configure to use <code>.ssh</code> secure keys, and thereby avoid hardcoding your Apache LDAP password into your <code>.m2/settings.xml</code> file. A description of how to do this can be found, for example, <a href="http://bval.apache.org/release-setup.html">here</a>.
-</div></p>
+<blockquote>
+  <p>It is also possible to configure to use <code>.ssh</code> secure keys, and thereby avoid hardcoding your Apache LDAP password into your <code>.m2/settings.xml</code> file. A description of how to do this can be found, for example, <a href="http://bval.apache.org/release-setup.html">here</a>.
+  </div></p>
+</blockquote>
 
 <h4>Pull down code to release</h4>
 
@@ -374,16 +381,20 @@ git pull --ff-only
 git checkout -b prepare/isis-1.2.3-RC1
 </pre>
 
-<p>All release preparation is done locally; if we are successful, this branch will be pushed back to master.</p>
+<blockquote>
+  <p>or, as a variation on this, you might just create a branch based on the JIRA ticket, eg ISIS-666.  This is probably easiest if using a single branch to release core plus a bunch of components.</p>
+</blockquote>
 
-<p><div class="note">
-Unless otherwise stated, you should assume that all remaining steps should be performed in the base directory of the module being released.
-</div></p>
+<p>All release preparation is done locally; if we are successful, this branch will be pushed back to master.</p>
 
 <p>Finally, make sure you have a JIRA ticket open against which to perform all commits.</p>
 
 <h2>Code Prerequisites</h2>
 
+<p><div class="note">
+Unless otherwise stated, you should assume that all remaining steps should be performed in the base directory of the module being released.
+</div></p>
+
 <p>Before making any formal release, there are a number of prerequisites that should always be checked.</p>
 
 <h3>Update the version number</h3>
@@ -428,17 +439,17 @@ Unless otherwise stated, you should assu
 &lt;/parent&gt;
 </pre>
 
-<p><div class="note">
-This obviously requires that the core has been released previously.  If you 
-also releasing core at the same time as the component, then you will need to go through the release process for core first, then come back round to release the component.
-</div></p>
+<blockquote>
+  <p>This obviously requires that the core has been released previously.  If you 
+  also releasing core at the same time as the component, then you will need to go through the release process for core first, then come back round to release the component.</p>
+</blockquote>
 
 <p>Also, if there is a tck test module with <code>oa.isis.core:isis-core-tck</code> as its parent, then make sure that it is also updated.</p>
 
 <p>All components have a small handful of modules, so it's probably easiest to load up and inspect each in turn:</p>
 
 <pre>
-vi `find . -name pom.xml | grep -v target`
+vi `/bin/find . -name pom.xml | grep -v target`
 </pre>
 
 <p>... and search for <code>SNAPSHOT</code>.</p>
@@ -449,10 +460,10 @@ vi `find . -name pom.xml | grep -v targe
 
 <pre>
 mvn versions:display-dependency-updates > /tmp/foo
-grep "\->" /tmp/foo | sort -u
+grep "\->" /tmp/foo | /bin/sort -u
 </pre>
 
-<p>Update any of the dependencies that are out-of-date.  That said, do note that some dependencies may show up with with a new dependency, when in fact the dependency is for an old, badly named version.  Also, there may be new dependencies that you do not wish to move to, eg release candidates or milestones.</p>
+<p>Update any of the dependencies that are out-of-date.  That said, do note that some dependencies may show up with a new dependency, when in fact the dependency is for an old, badly named version.  Also, there may be new dependencies that you do not wish to move to, eg release candidates or milestones.</p>
 
 <p>For example, here is a report showing both of these cases:</p>
 
@@ -487,14 +498,14 @@ mvn org.apache.rat:apache-rat-plugin:che
 
 <p>where <code>rat.numUnapprovedLicenses</code> property is set to a high figure, temporarily overriding the default value of 0.  This will allow the command to run over all submodules, rather than failing after the first one. </p>
 
-<p><div class="note">
-Do <em>not</em> use <code>mvn rat:check</code>; depending on your local Maven configuratoin this may bring down the obsolete <code>mvn-rat-plugin</code> from the Codehaus repo.
-</div></p>
+<blockquote>
+  <p>Do <em>not</em> use <code>mvn rat:check</code>; depending on your local Maven configuratoin this may bring down the obsolete <code>mvn-rat-plugin</code> from the Codehaus repo.</p>
+</blockquote>
 
 <p>All being well the command should complete.  For each failing submodule, it will have written out a <code>target\rat.txt</code>; missing license notes are indicated using the key <code>!???</code>.  You can collate these together using something like:</p>
 
 <pre>
-for a in `find . -name rat.txt -print`; do grep '!???' $a; done
+for a in `/bin/find . -name rat.txt -print`; do grep '!???' $a; done
 </pre>
 
 <p>Investigate and fix any reported violations, typically by either:</p>
@@ -564,9 +575,9 @@ licenses to remove from supplemental-mod
 
 <p>If any missing entries are listed or are spurious, then update <code>supplemental-models.xml</code> and try again.</p>
 
-<p><div class="note">
-Ignore any missing license warnings for the TCK modules; this is a result of the TCK modules for the viewers (eg <code>isis-viewer-bdd-concordion-tck</code>) depending on the TCK dom, fixtures etc.
-</div></p>
+<blockquote>
+  <p>Ignore any missing license warnings for the TCK modules; this is a result of the TCK modules for the viewers (eg <code>isis-viewer-bdd-concordion-tck</code>) depending on the TCK dom, fixtures etc.</p>
+</blockquote>
 
 <h2>Sanity check</h2>
 
@@ -608,81 +619,9 @@ mvn clean install
 
 <p>Confirm that the versions of the Isis artifacts now cached in your local repository are correct (both those pulled down from Maven central repo, as well as those of the component built locally).  The versions of <code>core</code> should not be a SNAPSHOT.</p>
 
-<!--
-- site builds ok
-
-
-
-8daeb02ea775a67d739f8b27afce0e56
-
-
-
-
-
-b9e9eddbae509563765e3948e400a106
-
-
-
-
-ffda6510d6461f9b86dee513a96bdf4e
-
-
-
-Most of the work is done using the `mvn release:prepare` goal.  Since this makes a lot of changes, we run it first in "dry run" mode; only if that works do we run the goal for real.
-
-<!--
-TODO: a section like this will be required when considering archetypes and/or maven sites.
-
-
-
-dd1e3819ad00060b111c7ca749b4855e
-
-
-
-There are a couple of locations where the version must be bumped up manually.
--->
-
-<!--
-TODO: something equivalent to this will need to be documented for the archetype modules.
-
-
-
-ee6f07276c9cce1e49b88bfb3407c500
-
-
-
-The release plugin (used in the sections that follow) will automatically bump up the `<version>` of all of the POMs (first to remove the `-SNAPSHOT` prefix while the release is being cut, and then update to the next iterations `-SNAPSHOT` after that). However, what it doesn't do, unfortunately, is to update the `<isis.version>` property in the archetype resources for the quickstart archetype.
-
-Therefore, open up the `src/main/resources/archetype-resources/pom.xml` in the `oai:quickstart-archetype` module, and update the `<isis.version>` property:
-
-
-
-473a27b308c556ac2ee13a7c80e8c5fd
-
-
-Then commit the pom.xml file.
--->
-
-<!--
-TODO: something like this will be need to be considered when we get Maven site running again.
-
-
-
-ec30588e92e313f15529ce85cb54a885
-
-
+<h2>Preparing a Release (<code>mvn release:prepare</code>)</h2>
 
-The parent module's `site.xml` file defines the skin that is used by the parent module and every inheriting child module. Since the Maven release process does not automatically increment this version, it must be updated manually first.
-
-Therefore, open up the `src/site/site.xml` in the `oai.core:isis` parent module, and update the `<version>`:
-
-
-
-453e6e27e87ddbf1d60e5c755b787e7f
-
-
-Then commit the `site.xml` file.
--->
+<p>Most of the work is done using the <code>mvn release:prepare</code> goal.  Since this makes a lot of changes, we run it first in "dry run" mode; only if that works do we run the goal for real.</p>
 
 <h3>Dry-run</h3>
 
@@ -696,7 +635,7 @@ If you are working on Windows and using 
 mvn release:prepare -P apache-release -D dryRun=true
 </pre>
 
-<p>Some modules might have additional profiles to be activated.  For example, the sql OS requires <code>-P apache-release,integration-tests</code> so that its integration tests are also run.</p>
+<p>Some modules might have additional profiles to be activated.  For example, the (now mothballed) SQL ObjectStore required <code>-P apache-release,integration-tests</code> so that its integration tests are also run.</p>
 
 <p>This should generate something like:</p>
 
@@ -850,9 +789,9 @@ re
 
 <p>Log onto <a href="http://repository.apache.org">repository.apache.org</a> (using your ASF LDAP account) and check that the release has been staged:</p>
 
-<!--
-TODO: update screenshot
--->
+<blockquote>
+  <p>screenshot below is out of date</p>
+</blockquote>
 
 <p><img src="resources/nexus-staging-1.png" width="600px"/></p>
 
@@ -866,17 +805,17 @@ TODO: update screenshot
 
 <p>Press the Close button and complete the dialog:</p>
 
-<!--
-TODO: update screenshot
--->
+<blockquote>
+  <p>screenshot below is out of date</p>
+</blockquote>
 
 <p><img src="resources/nexus-staging-2.png" width="600px"/></p>
 
 <p>All being well, the close should complete successfully:</p>
 
-<!--
-TODO: update screenshot
--->
+<blockquote>
+  <p>screenshot below is out of date</p>
+</blockquote>
 
 <p><img src="resources/nexus-staging-3.png" width="600px"/></p>
 
@@ -884,17 +823,17 @@ TODO: update screenshot
 
 <p>If Nexus has problems with the key signature, however, then the close will be aborted:</p>
 
-<!--
-TODO: update screenshot
--->
+<blockquote>
+  <p>screenshot below is out of date</p>
+</blockquote>
 
 <p><img src="resources/nexus-staging-4.png" width="600px"/></p>
 
 <p>Use <code>gpg --keyserver hkp://pgp.mit.edu --recv-keys nnnnnnnn</code> to confirm that the key is available.</p>
 
-<p><div class="note">
-Unfortunately, Nexus does not seem to allow subkeys to be used for signing. See <a href="key-generation.html">Key Generation</a> for more details.
-</div></p>
+<blockquote>
+  <p>Unfortunately, Nexus does not seem to allow subkeys to be used for signing. See <a href="key-generation.html">Key Generation</a> for more details.</p>
+</blockquote>
 
 <h3>Push changes</h3>