Author: buildbot
Date: Mon Aug 17 18:54:33 2015
New Revision: 962162
Log:
Staging update by buildbot for accumulo
Modified:
websites/staging/accumulo/trunk/content/ (props changed)
websites/staging/accumulo/trunk/content/source.html
Propchange: websites/staging/accumulo/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Mon Aug 17 18:54:33 2015
@@ -1 +1 @@
-1689714
+1696328
Modified: websites/staging/accumulo/trunk/content/source.html
==============================================================================
--- websites/staging/accumulo/trunk/content/source.html (original)
+++ websites/staging/accumulo/trunk/content/source.html Mon Aug 17 18:54:33 2015
@@ -255,13 +255,29 @@ need to install or modify the Thrift def
<h4 id="running-a-build">Running a Build<a class="headerlink"
href="#running-a-build" title="Permanent link">¶</a></h4>
<p>Accumulo uses <a href="http://maven.apache.org/">Apache Maven</a> to
handle source building, testing, and packaging. To build Accumulo you will need
to use Maven version 3.0.4 or later.</p>
-<p>To build the code:</p>
-<div class="codehilite"><pre><span class="n">mvn</span> <span
class="n">package</span> <span class="o">-</span><span class="n">P</span> <span
class="n">assemble</span>
+<p>You should familiarize yourself with the <a
href="https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html">Maven
Build Lifecycle</a>, as well as the various plugins we use in our <a
href="https://git-wip-us.apache.org/repos/asf?p=accumulo.git;a=blob_plain;f=pom.xml;hb=HEAD">POM</a>,
in order to understand how Maven works and how to use the various build
options while building Accumulo.</p>
+<p>To build from source (for example, to deploy):</p>
+<div class="codehilite"><pre><span class="n">mvn</span> <span
class="n">package</span> <span class="o">-</span><span
class="n">Passemble</span>
</pre></div>
-<p>This will create a file accumulo-*-SNAPSHOT-dist.tar.gz in the
assemble/target directory.</p>
-<p>For older branches, "mvn package && mvn assembly:single" may be
required instead, and the tar will be built in the target directory.</p>
+<p>This will create a file accumulo-*-SNAPSHOT-dist.tar.gz in the
assemble/target directory. Optionally, append <code>-DskipTests</code> if you
want to skip the build tests.</p>
+<p>To build your branch before submitting a pull request, you'll probably want
to run some basic "sunny-day" integration tests to ensure you haven't made any
grave errors, as well as <code>checkstyle</code> and <code>findbugs</code>:</p>
+<div class="codehilite"><pre><span class="n">mvn</span> <span
class="n">verify</span> <span class="o">-</span><span class="n">Psunny</span>
+</pre></div>
+
+
+<p>To run specific unit tests, you can run:</p>
+<div class="codehilite"><pre><span class="n">mvn</span> <span
class="n">package</span> <span class="o">-</span><span
class="n">Dtest</span><span class="p">=</span><span class="n">MyTest</span>
<span class="o">-</span><span class="n">DfailIfNoTests</span><span
class="p">=</span><span class="n">false</span>
+</pre></div>
+
+
+<p>Or to run the specific integration tests MyIT and YourIT (and skip all unit
tests), you can run:</p>
+<div class="codehilite"><pre><span class="n">mvn</span> <span
class="n">package</span> <span class="o">-</span><span
class="n">Dtest</span><span class="p">=</span><span
class="n">NoSuchTestExists</span> <span class="o">-</span><span
class="n">Dit</span><span class="p">.</span><span class="n">test</span><span
class="p">=</span><span class="n">MyIT</span><span class="p">,</span><span
class="n">YourIT</span> <span class="o">-</span><span
class="n">DfailIfNoTests</span><span class="p">=</span><span
class="n">false</span>
+</pre></div>
+
+
+<p>There are plenty of other options. For example, you can skip findbugs with
<code>mvn verify -Dfindbugs.skip</code> or checkstyle
<code>-Dcheckstyle.skip</code>, or control the number of forks to use while
executing tests, <code>-DforkCount=4</code>, etc. You should check with
specific plugins to see which command-line options are available to control
their behavior. Note that not all options will result in a stable build, and
options may change over time.</p>
<p>If you regularly switch between major development branches, you may receive
errors about improperly licensed files from the <a
href="http://creadur.apache.org/rat/apache-rat-plugin/">RAT plugin</a>. This is
caused by modules that exist in one branch and not the other leaving Maven
build files that the RAT plugin no longer understands how to ignore.</p>
<p>The easiest fix is to ensure all of your current changes are stored in git
and then cleaning your workspace.</p>
<div class="codehilite"><pre>$<span class="o">></span> <span
class="n">git</span> <span class="n">add</span> <span
class="n">path</span><span class="o">/</span><span class="n">to</span><span
class="o">/</span><span class="n">file</span><span class="o">/</span><span
class="n">that</span><span class="o">/</span><span class="n">has</span><span
class="o">/</span><span class="n">changed</span>