Author: rhauch
Date: 2008-09-26 11:41:02 -0400 (Fri, 26 Sep 2008)
New Revision: 545
Modified:
trunk/docs/reference/src/main/docbook/en-US/content/development_tools.xml
Log:
DNA-214 Update documentation to describe the repository, federation, JCR and other 0.2
features
https://jira.jboss.org/jira/browse/DNA-214
Documented the release build process, and added another 'all' assembly that
contains all of the code
Modified: trunk/docs/reference/src/main/docbook/en-US/content/development_tools.xml
===================================================================
--- trunk/docs/reference/src/main/docbook/en-US/content/development_tools.xml 2008-09-26
03:36:03 UTC (rev 544)
+++ trunk/docs/reference/src/main/docbook/en-US/content/development_tools.xml 2008-09-26
15:41:02 UTC (rev 545)
@@ -209,30 +209,6 @@
</tbody>
</tgroup>
</table>
- <sect2 id="build-releases">
- <title>Building releases</title>
- <para>
- The process of building JBoss DNA releases involves running a Maven build with some
extra parameters.
- Building these artifacts, including all documentation and JavaDocs, does take extra
time, which is why
- they are not included in the default parameters.
- </para>
- <para>
- To build the release, issue the following command while in the
<code>target/</code> directory:
- </para>
- <programlisting>mvn -P assembly clean javadoc:javadoc
install</programlisting>
- <para>
- This command runs "clean", "javadoc:javadoc", and
"install" goals using the "assembly" profile,
- which adds the production JavaDocs, the Getting Started document, the Reference Guide
document,
- the Getting Started examples, and several ZIP archives. The order of the goals is
important,
- since the "install" goal attempts to include the JavaDoc in the archives.
- </para>
- <note>
- <para>
- Before running the above command, increase the memory available to Maven with this
command:
- </para>
- <programlisting>export MAVEN_OPTS=-Xmx256m</programlisting>
- </note>
- </sect2>
</sect1>
<sect1 id="hudson">
<title>Continuous integration with Hudson</title>
@@ -318,4 +294,91 @@
and then check each of the <link
linkend="modules">subprojects</link> that you want to have in your
workspace.
</para>
</sect1>
+ <sect1 id="releasing">
+ <title>Releasing</title>
+ <para>
+ This section outlines the basic process of releasing JBoss DNA. This <emphasis
role="strong">must</emphasis> be done
+ either by the project lead or only after communicating with the project lead.
+ </para>
+ <sect2 id="build-all-artifacts-and-assemblies">
+ <title>Building all artifacts and assemblies</title>
+ <para>
+ By default, the project's Maven build process is does
<emphasis>not</emphasis> build the documentation, JavaDocs, or assemblies.
+ These take extra time, and most of our builds don't require them. So the first
step of releasing JBoss DNA
+ is to use Maven to build all of regular artifacts (e.g., JARs) and these extra
documents and assemblies.
+ </para>
+ <note>
+ <para>
+ Before running Maven commands to build the releases, increase the memory available
to Maven with this command:
+ </para>
+ <programlisting>$ export MAVEN_OPTS=-Xmx256m</programlisting>
+ </note>
+ <para>
+ To perform this complete build, issue the following command while in the
<code>target/</code> directory:
+ </para>
+ <programlisting>$ mvn -P assembly clean javadoc:javadoc
install</programlisting>
+ <para>
+ This command runs "clean", "javadoc:javadoc", and
"install" goals using the "assembly" profile,
+ which adds the production JavaDocs, the Getting Started document, the Reference Guide
document,
+ the Getting Started examples, and several ZIP archives. The order of the goals is
important,
+ since the "install" goal attempts to include the JavaDoc in the archives.
+ </para>
+ <para>
+ After completed, verify that the assemblies under <code>target/</code>
have actually been created and that
+ they contain the correct information. Now, clean up your workspace:
+ </para>
+ <programlisting>$ mvn -Passembly clean</programlisting>
+ <para>
+ At this point, we know that the actual Maven build process is building
+ everything we want and will complete without errors. We can now proceed with
preparing for the release.
+ </para>
+ </sect2>
+ <sect2 id="determine-version">
+ <title>Determine the version to be released</title>
+ <para>
+ The version being released should match the &JIRA; road map. Make sure that all
issues related to the release are closed.
+ The project lead should be notified and approve that the release is taking place.
+ </para>
+ </sect2>
+ <sect2 id="release-dry-run">
+ <title>Release dry run</title>
+ <para>
+ The next step is to ensure that all information in the POM is correct and contains
all the information required for
+ the release process. This is called a <emphasis>dry run</emphasis>, and
is done with the Maven "release" plugin:
+ </para>
+ <programlisting>$ mvn release:prepare -DdryRun=true</programlisting>
+ </sect2>
+ <sect2 id="release">
+ <title>Release</title>
+ <para>
+
+ </para>
+ </sect2>
+ <sect2 id="tagging">
+ <title>Building Releases</title>
+ <para>
+ Finally, the code can be tagged with the new release, using the following Subversion
command.
+ Just remember to use the correct
<code><releaseNumber<</code>:
+ </para>
+ <programlisting>
+$ svn copy
https://svn.jboss.org/repos/dna/trunk \
+
https://svn.jboss.org/repos/dna/tags/dna-<emphasis><releaseN...
\
+ -m "Releasing JBoss DNA <releaseNumber<"
+ </programlisting>
+ <para>
+ Of course, this will copy of <code>HEAD</code>. To copy a particular
revision in <code>trunk/</code>, use
+ the <code>-r</code> argument with the correct SVN revision number:
+ </para>
+ <programlisting>
+$ svn copy
https://svn.jboss.org/repos/dna/trunk
-r<emphasis><revisionNumber<</emphasis> \
+
https://svn.jboss.org/repos/dna/tags/dna-<emphasis><releaseN...
\
+ -m "Releasing JBoss DNA <releaseNumber<"
+</programlisting>
+ <note>
+ <para>
+ You can obtain the latest revision number using the <code>$ svn
info</code> command.
+ </para>
+ </note>
+ </sect2>
+ </sect1>
</chapter>