Merge branch '1.5.1-SNAPSHOT' into 1.6.0-SNAPSHOT
Project: http://git-wip-us.apache.org/repos/asf/accumulo/repo Commit: http://git-wip-us.apache.org/repos/asf/accumulo/commit/ee3ccb82 Tree: http://git-wip-us.apache.org/repos/asf/accumulo/tree/ee3ccb82 Diff: http://git-wip-us.apache.org/repos/asf/accumulo/diff/ee3ccb82 Branch: refs/heads/1.6.0-SNAPSHOT Commit: ee3ccb82d235b40f76a8d460e0688cbe304bd4bf Parents: 4a87383 a91ee4d Author: Mike Drob <md...@cloudera.com> Authored: Mon Jan 6 16:21:31 2014 -0800 Committer: Mike Drob <md...@cloudera.com> Committed: Mon Jan 6 16:21:31 2014 -0800 ---------------------------------------------------------------------- README | 8 ++++---- pom.xml | 47 +++++++++++++++++++++++++++++++++++++---------- test/pom.xml | 38 ++++++++++++++++++++++++++++++-------- 3 files changed, 71 insertions(+), 22 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/accumulo/blob/ee3ccb82/README ---------------------------------------------------------------------- diff --cc README index a232fdb,b0fbcbd..69aad57 --- a/README +++ b/README @@@ -15,24 -15,17 +15,24 @@@ ready to go on x86 GNU/Linux: there is However, if you only have source code, or you wish to make changes, you need to have maven configured to get Accumulo prerequisites from repositories. See -the pom.xml file for the necessary components. Activate the 'docs' profile to build -the Accumulo developer and user manual. - -Run "mvn package -P assemble" to build a distribution, or run -"mvn package -P assemble,docs" to also build the documentation. By default, -Accumulo compiles against Hadoop 1.2.1. To compile against a different version -that is compatible with Hadoop 1, specify hadoop.version on the command line, -e.g. "-Dhadoop.version=0.20.205.0" or "-Dhadoop.version=1.1.0". To compile -against Hadoop 2, specify "-Dhadoop.profile=2". By default this uses -2.2.0. To compile against a different 2-compatible version, specify -the profile and version, e.g. "-Dhadoop.profile=2 -Dhadoop.version=0.23.5". +the pom.xml file for the necessary components. + +You can build an Accumulo binary distribution, which is created in the +assemble/target directory, using the following command. Note that maven 3 +is required starting with Accumulo v1.5.0. By default, Accumulo compiles +against Hadoop 2.2.0, but these artifacts should be compatible with Apache +Hadoop 1.2.x or Apache Hadoop 2.2.x releases. + + mvn package -P assemble + +By default, Accumulo compiles against Apache Hadoop 2.2.0. To compile against - a different 2.2-compatible version, specify the profile and version, ++a different Hadoop 2-compatible version, specify the profile and version, +e.g. "-Dhadoop.version=0.23.5". + +To compile against Apache Hadoop 1.2.1, or a different version that is compatible - with Hadoop 1.0, specify hadoop.profile and hadoop.version on the command line, - e.g. "-Dhadoop.profile=1.2 -Dhadoop.version=0.20.205.0" or - "-Dhadoop.profile=1.2 -Dhadoop.version=1.1.0". ++with Hadoop 1, specify hadoop.profile and hadoop.version on the command line, ++e.g. "-Dhadoop.profile=1 -Dhadoop.version=0.20.205.0" or ++ "-Dhadoop.profile=1 -Dhadoop.version=1.1.0". If you are running on another Unix-like operating system (OSX, etc) then you may wish to build the native libraries. They are not strictly necessary http://git-wip-us.apache.org/repos/asf/accumulo/blob/ee3ccb82/pom.xml ---------------------------------------------------------------------- diff --cc pom.xml index 6dc973f,2d5f663..87f8ed6 --- a/pom.xml +++ b/pom.xml @@@ -114,20 -105,19 +114,20 @@@ </site> </distributionManagement> <properties> + <accumulo.it.forkCount>1</accumulo.it.forkCount> <!-- used for filtering the java source with the current version --> <accumulo.release.version>${project.version}</accumulo.release.version> - <!-- overwritten in profiles hadoop-1.0 or hadoop-2.0 --> + <!-- overwritten in profiles hadoop-1 or hadoop-2 --> - <hadoop.version>1.2.1</hadoop.version> - <httpclient.version>3.0.1</httpclient.version> + <hadoop.version>2.2.0</hadoop.version> + <httpclient.version>3.1</httpclient.version> <!-- the maven-release-plugin makes this recommendation, due to plugin bugs --> <maven.min-version>3.0.4</maven.min-version> <powermock.version>1.5</powermock.version> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <sealJars>false</sealJars> - <!-- overwritten in profiles hadoop-1.0 or hadoop-2.0 --> + <!-- overwritten in profiles hadoop-1 or hadoop-2 --> - <slf4j.version>1.4.3</slf4j.version> + <slf4j.version>1.7.5</slf4j.version> <!-- ZooKeeper 3.4.x works also, but we're not using new features yet; this ensures 3.3.x compatibility. --> <zookeeper.version>3.3.6</zookeeper.version> </properties> @@@ -1186,10 -947,30 +1192,29 @@@ </plugins> </reporting> </profile> + <!-- profile for our default Hadoop build + unfortunately, has to duplicate one of our + specified profiles. see MNG-3328 --> <profile> - <!-- profile for building against Hadoop 1.2.x - Activate using: mvn -Dhadoop.profile=1.2 --> - <id>hadoop-1.2</id> + <id>hadoop-default</id> + <activation> + <property> + <name>!hadoop.profile</name> + </property> + </activation> + <properties> + <!-- Denotes intention and allows the enforcer plugin to pass when + the user is relying on default behavior; won't work to activate profile --> - <hadoop.profile>1</hadoop.profile> - <hadoop.version>1.2.1</hadoop.version> - <httpclient.version>3.0.1</httpclient.version> - <slf4j.version>1.4.3</slf4j.version> ++ <hadoop.profile>2</hadoop.profile> ++ <hadoop.version>2.2.0</hadoop.version> ++ <httpclient.version>3.1</httpclient.version> ++ <slf4j.version>1.7.5</slf4j.version> + </properties> + </profile> + <!-- profile for building against Hadoop 1.x - XXX Since this is the default, make sure to sync hadoop-default when changing. + Activate using: mvn -Dhadoop.profile=1 --> + <profile> + <id>hadoop-1</id> <activation> <property> <name>hadoop.profile</name> @@@ -1202,13 -983,14 +1227,15 @@@ <slf4j.version>1.4.3</slf4j.version> </properties> </profile> + <!-- profile for building against Hadoop 2.x ++ XXX Since this is the default, make sure to sync hadoop-default when changing. + Activate using: mvn -Dhadoop.profile=2 --> <profile> - <!-- profile for building against Hadoop 2.2.x - Activate by not specifying hadoop.profile --> - <id>hadoop-2.2</id> + <id>hadoop-2</id> <activation> <property> - <name>!hadoop.profile</name> + <name>hadoop.profile</name> + <value>2</value> </property> </activation> <properties> http://git-wip-us.apache.org/repos/asf/accumulo/blob/ee3ccb82/test/pom.xml ---------------------------------------------------------------------- diff --cc test/pom.xml index c48aa7a,9579581..901baa3 --- a/test/pom.xml +++ b/test/pom.xml @@@ -197,74 -129,30 +197,94 @@@ </build> <profiles> <profile> + <id>shared-mini-for-it</id> + <activation> + <property> + <name>!skipITs</name> + </property> + </activation> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <id>setup-mini-classpath</id> + <goals> + <goal>build-classpath</goal> + </goals> + <phase>pre-integration-test</phase> + <configuration> + <includeScope>test</includeScope> + <outputProperty>accumulo-it-mini-classpath</outputProperty> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>exec-maven-plugin</artifactId> + <executions> + <execution> + <id>run-mini-for-integration-tests</id> + <goals> + <goal>java</goal> + </goals> + <phase>pre-integration-test</phase> + <configuration> + <mainClass>org.apache.accumulo.maven.plugin.StartMojo</mainClass> + <classpathScope>test</classpathScope> + <arguments> + <!-- These first two should stay static --> + <argument>${project.build.directory}</argument> + <argument>${accumulo-it-mini-classpath}</argument> + <!-- InstanceName RootPassword, one pair per MiniAccumuloCluster --> + <argument>testInstance1 testRootPassword1</argument> + </arguments> + </configuration> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + <configuration> + <systemProperties> + <property> + <name>org.apache.accumulo.test.functional.useSslForIT</name> + <value>${useSslForIT}</value> + </property> + </systemProperties> + </configuration> + </plugin> + </plugins> + </build> + </profile> + <profile> - <!-- profile for building against Hadoop 1.2.x - Activate using: mvn -Dhadoop.profile=1.2 --> - <id>hadoop-1.2</id> + <id>hadoop-default</id> + <activation> + <property> + <name>!hadoop.profile</name> + </property> + </activation> + <properties> + <!-- Denotes intention and allows the enforcer plugin to pass when + the user is relying on default behavior; won't work to activate profile --> - <hadoop.profile>1</hadoop.profile> ++ <hadoop.profile>2</hadoop.profile> + </properties> + <dependencies> + <dependency> + <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-tools</artifactId> ++ <artifactId>hadoop-distcp</artifactId> + <scope>test</scope> + </dependency> + </dependencies> + </profile> + <!-- profile for building against Hadoop 1.x - XXX Since this is the default, make sure to sync hadoop-default when changing. + Activate using: mvn -Dhadoop.profile=1 --> + <profile> + <id>hadoop-1</id> <activation> <property> <name>hadoop.profile</name> @@@ -279,13 -167,14 +299,15 @@@ </dependency> </dependencies> </profile> + <!-- profile for building against Hadoop 2.x ++ XXX Since this is the default, make sure to sync hadoop-default when changing. + Activate using: mvn -Dhadoop.profile=2 --> <profile> - <!-- profile for building against Hadoop 2.2.x - Activate by not specifying hadoop.profile --> - <id>hadoop-2.2</id> + <id>hadoop-2</id> <activation> <property> - <name>!hadoop.profile</name> + <name>hadoop.profile</name> + <value>2</value> </property> </activation> <dependencies>