You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ct...@apache.org on 2015/08/17 20:54:18 UTC

svn commit: r1696328 - /accumulo/site/trunk/content/source.mdtext

Author: ctubbsii
Date: Mon Aug 17 18:54:18 2015
New Revision: 1696328

URL: http://svn.apache.org/r1696328
Log:
ACCUMULO-3964 Update source page to clarify build options

Modified:
    accumulo/site/trunk/content/source.mdtext

Modified: accumulo/site/trunk/content/source.mdtext
URL: http://svn.apache.org/viewvc/accumulo/site/trunk/content/source.mdtext?rev=1696328&r1=1696327&r2=1696328&view=diff
==============================================================================
--- accumulo/site/trunk/content/source.mdtext (original)
+++ accumulo/site/trunk/content/source.mdtext Mon Aug 17 18:54:18 2015
@@ -68,13 +68,27 @@ To check out the code:
 
 Accumulo uses  [Apache Maven][maven] to handle source building, testing, and packaging. To build Accumulo you will need to use Maven version 3.0.4 or later.
 
-To build the code:
+You should familiarize yourself with the [Maven Build Lifecycle][lifecycle], as well as the various plugins we use in our [POM][pom], in order to understand how Maven works and how to use the various build options while building Accumulo.
 
-    mvn package -P assemble
+To build from source (for example, to deploy):
 
-This will create a file accumulo-*-SNAPSHOT-dist.tar.gz in the assemble/target directory.
+    mvn package -Passemble
 
-For older branches, "mvn package && mvn assembly:single" may be required instead, and the tar will be built in the target directory.
+This will create a file accumulo-*-SNAPSHOT-dist.tar.gz in the assemble/target directory. Optionally, append `-DskipTests` if you want to skip the build tests.
+
+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 `checkstyle` and `findbugs`:
+
+    mvn verify -Psunny
+
+To run specific unit tests, you can run:
+
+    mvn package -Dtest=MyTest -DfailIfNoTests=false
+
+Or to run the specific integration tests MyIT and YourIT (and skip all unit tests), you can run:
+
+    mvn package -Dtest=NoSuchTestExists -Dit.test=MyIT,YourIT -DfailIfNoTests=false
+
+There are plenty of other options. For example, you can skip findbugs with `mvn verify -Dfindbugs.skip` or checkstyle `-Dcheckstyle.skip`, or control the number of forks to use while executing tests, `-DforkCount=4`, 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.
 
 If you regularly switch between major development branches, you may receive errors about improperly licensed files from the [RAT plugin][1]. 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.
 
@@ -186,6 +200,8 @@ Accumulo's release guide can be found [h
 [cgit]: https://git-wip-us.apache.org/repos/asf?p=accumulo.git;a=summary
 [anongit]: git://git.apache.org/accumulo.git
 [rb]: rb.html
+[pom]: https://git-wip-us.apache.org/repos/asf?p=accumulo.git;a=blob_plain;f=pom.xml;hb=HEAD
+[lifecycle]: https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html
 
 
   [1]: http://creadur.apache.org/rat/apache-rat-plugin/
\ No newline at end of file