Repository: phoenix Updated Branches: refs/heads/4.x-HBase-1.0 9cf30b532 -> 5f062bd18
PHOENIX-2115 Simplify Pherf generated dependency jar and pom.xml Project: http://git-wip-us.apache.org/repos/asf/phoenix/repo Commit: http://git-wip-us.apache.org/repos/asf/phoenix/commit/5f062bd1 Tree: http://git-wip-us.apache.org/repos/asf/phoenix/tree/5f062bd1 Diff: http://git-wip-us.apache.org/repos/asf/phoenix/diff/5f062bd1 Branch: refs/heads/4.x-HBase-1.0 Commit: 5f062bd187c68b868df3e0501c08f2eac6e7f43e Parents: 9cf30b5 Author: Mujtaba <mujt...@apache.org> Authored: Tue Jul 21 15:56:03 2015 -0700 Committer: Mujtaba <mujt...@apache.org> Committed: Tue Jul 21 15:56:03 2015 -0700 ---------------------------------------------------------------------- phoenix-pherf/cluster/pherf.sh | 4 +- phoenix-pherf/config/env.sh | 4 +- phoenix-pherf/pom.xml | 527 ++++++------------- .../src/main/assembly/components-minimal.xml | 33 ++ phoenix-pherf/src/main/assembly/minimal.xml | 31 ++ phoenix-pherf/src/main/assembly/standalone.xml | 13 +- 6 files changed, 245 insertions(+), 367 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/phoenix/blob/5f062bd1/phoenix-pherf/cluster/pherf.sh ---------------------------------------------------------------------- diff --git a/phoenix-pherf/cluster/pherf.sh b/phoenix-pherf/cluster/pherf.sh index 8d58dfe..2e0913e 100755 --- a/phoenix-pherf/cluster/pherf.sh +++ b/phoenix-pherf/cluster/pherf.sh @@ -17,7 +17,7 @@ # limitations under the License. source config/env.sh -HBASE_CLASSPATH=`$HBASE_ROOT/hbase/hbase/bin/hbase classpath` +HBASE_CLASSPATH=`$HBASE_PATH/bin/hbase classpath` PHERF_HOME=$(cd "`dirname $0`" && pwd) @@ -30,4 +30,4 @@ done CMD="time ${JAVA_HOME}/bin/java ${REMOTE_DEBUG} -Dapp.home=${PHERF_HOME} ${ENV_PROPS} -Xms512m -Xmx3072m -cp ${CLASSPATH} org.apache.phoenix.pherf.Pherf ${@}" -eval $CMD \ No newline at end of file +eval $CMD http://git-wip-us.apache.org/repos/asf/phoenix/blob/5f062bd1/phoenix-pherf/config/env.sh ---------------------------------------------------------------------- diff --git a/phoenix-pherf/config/env.sh b/phoenix-pherf/config/env.sh index 0979415..b8115b6 100644 --- a/phoenix-pherf/config/env.sh +++ b/phoenix-pherf/config/env.sh @@ -19,11 +19,11 @@ # Required variable to point to Java installation JAVA_HOME= -# Absolute path the the unzipped root directory of the HBase installation +# Absolute path the the unzipped directory of the HBase installation # This is required if you build using the default or cluster profile # Cluster profile assumes you want to pick up dependencies from HBase classpath # Not required in standalone. -HBASE_ROOT= +HBASE_PATH= # Add a space seperated list of -D environment args. "-Dkey1-val1 -Dkey2=val2" ENV_PROPS="" http://git-wip-us.apache.org/repos/asf/phoenix/blob/5f062bd1/phoenix-pherf/pom.xml ---------------------------------------------------------------------- diff --git a/phoenix-pherf/pom.xml b/phoenix-pherf/pom.xml index f3482eb..803e3ed 100644 --- a/phoenix-pherf/pom.xml +++ b/phoenix-pherf/pom.xml @@ -1,364 +1,179 @@ -<!-- - ~ Licensed to the Apache Software Foundation (ASF) under one - ~ or more contributor license agreements. See the NOTICE file - ~ distributed with this work for additional information - ~ regarding copyright ownership. The ASF licenses this file - ~ to you under the Apache License, Version 2.0 (the - ~ "License"); you may not use this file except in compliance - ~ with the License. You may obtain a copy of the License at - ~ - ~ http://www.apache.org/licenses/LICENSE-2.0 - ~ - ~ Unless required by applicable law or agreed to in writing, software - ~ distributed under the License is distributed on an "AS IS" BASIS, - ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - ~ See the License for the specific language governing permissions and - ~ limitations under the License. - --> +<!-- ~ Licensed to the Apache Software Foundation (ASF) under one ~ or more + contributor license agreements. See the NOTICE file ~ distributed with this + work for additional information ~ regarding copyright ownership. The ASF + licenses this file ~ to you under the Apache License, Version 2.0 (the ~ + "License"); you may not use this file except in compliance ~ with the License. + You may obtain a copy of the License at ~ ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ ~ Unless required by applicable law or agreed to in writing, software ~ + distributed under the License is distributed on an "AS IS" BASIS, ~ WITHOUT + WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. ~ See the + License for the specific language governing permissions and ~ limitations + under the License. --> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache.phoenix</groupId> + <artifactId>phoenix</artifactId> + <version>4.5.0-HBase-1.0-SNAPSHOT</version> + </parent> -<project xmlns="http://maven.apache.org/POM/4.0.0" - xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <parent> - <groupId>org.apache.phoenix</groupId> - <artifactId>phoenix</artifactId> - <version>4.5.0-HBase-1.0-SNAPSHOT</version> - </parent> + <artifactId>phoenix-pherf</artifactId> + <packaging>jar</packaging> + <name>Phoenix - Pherf</name> - <artifactId>phoenix-pherf</artifactId> - <packaging>jar</packaging> - <name>Phoenix - Pherf</name> + <properties> + <top.dir>${project.basedir}/..</top.dir> + </properties> - <properties> - <top.dir>${project.basedir}/..</top.dir> - </properties> + <repositories> + <repository> + <id>apache release</id> + <url>https://repository.apache.org/content/repositories/releases/</url> + </repository> + </repositories> - <profiles> - <profile> - <id>standalone</id> - <activation> - <activeByDefault>true</activeByDefault> - </activation> - <build> - <resources> - <resource> - <directory>src/main/resources</directory> - </resource> - </resources> - <testResources> - <testResource> - <directory>src/test/resources</directory> - </testResource> - <testResource> - <directory>${project.basedir}/config</directory> - </testResource> - </testResources> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-resources-plugin</artifactId> - </plugin> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <executions> - <execution> - <id>make-dependency-jar</id> - <phase>package</phase> - <goals> - <goal>single</goal> - </goals> - <configuration> - <descriptorRefs> - <descriptorRef>jar-with-dependencies</descriptorRef> - </descriptorRefs> - <archive> - <manifest> - <mainClass>org.apache.phoenix.pherf.Pherf</mainClass> - </manifest> - </archive> - </configuration> - </execution> - <execution> - <id>make-assembly</id> - <phase>package</phase> - <goals> - <goal>single</goal> - </goals> - <configuration> - <descriptors> - <descriptor>src/main/assembly/standalone.xml</descriptor> - </descriptors> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> + <dependencies> + <dependency> + <groupId>org.apache.phoenix</groupId> + <artifactId>phoenix-core</artifactId> + </dependency> + <dependency> + <groupId>org.apache.phoenix</groupId> + <artifactId>phoenix-core</artifactId> + <classifier>tests</classifier> + <scope>test</scope> + </dependency> + <dependency> + <groupId>org.jfree</groupId> + <artifactId>jfreechart</artifactId> + <version>1.0.19</version> + </dependency> + <dependency> + <groupId>com.googlecode.java-diff-utils</groupId> + <artifactId>diffutils</artifactId> + <version>1.2.1</version> + </dependency> + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-lang3</artifactId> + <version>3.3.2</version> + </dependency> + <dependency> + <groupId>org.apache.commons</groupId> + <artifactId>commons-math3</artifactId> + <version>3.3</version> + </dependency> - <profile> - <!-- default: creates a bundle for running on an SFDC cluster node as the 'sfdc' user --> - <id>cluster</id> - <activation> - <activeByDefault>true</activeByDefault> - </activation> - <build> - <resources> - <resource> - <directory>src/main/resources</directory> - </resource> - </resources> - <testResources> - <testResource> - <directory>src/test/resources</directory> - </testResource> - <testResource> - <directory>${project.basedir}/config</directory> - </testResource> - </testResources> - <plugins> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-surefire-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-resources-plugin</artifactId> - </plugin> - <plugin> - <artifactId>maven-assembly-plugin</artifactId> - <executions> - <execution> - <id>make-dependency-jar</id> - <phase>package</phase> - <goals> - <goal>single</goal> - </goals> - <configuration> - <descriptorRefs> - <descriptorRef>jar-with-dependencies</descriptorRef> - </descriptorRefs> - <archive> - <manifest> - <mainClass>org.apache.phoenix.pherf.Pherf</mainClass> - </manifest> - </archive> - </configuration> - </execution> - <execution> - <id>make-assembly</id> - <phase>package</phase> - <goals> - <goal>single</goal> - </goals> - <configuration> - <descriptors> - <descriptor>src/main/assembly/cluster.xml</descriptor> - </descriptors> - </configuration> - </execution> - </executions> - </plugin> - </plugins> - </build> - </profile> + <!-- Test Dependencies --> + <dependency> + <groupId>junit</groupId> + <artifactId>junit</artifactId> + <version>4.11</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>com.jcabi</groupId> + <artifactId>jcabi-jdbc</artifactId> + <version>0.15</version> + </dependency> + <dependency> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-junit</artifactId> + <version>1.0.0.0</version> + <scope>test</scope> + </dependency> + <dependency> + <groupId>com.github.stefanbirkner</groupId> + <artifactId>system-rules</artifactId> + <version>1.8.0</version> + </dependency> + </dependencies> - </profiles> - <repositories> - <repository> - <id>apache release</id> - <url>https://repository.apache.org/content/repositories/releases/</url> - </repository> - </repositories> - <dependencies> - <dependency> - <groupId>org.apache.phoenix</groupId> - <artifactId>phoenix-core</artifactId> - </dependency> - <dependency> - <groupId>org.apache.phoenix</groupId> - <artifactId>phoenix-core</artifactId> - <classifier>tests</classifier> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.google.guava</groupId> - <artifactId>guava</artifactId> - <version>14.0.1</version> - </dependency> - <dependency> - <groupId>commons-io</groupId> - <artifactId>commons-io</artifactId> - <version>2.4</version> - </dependency> - <dependency> - <groupId>commons-cli</groupId> - <artifactId>commons-cli</artifactId> - <version>1.2</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-lang3</artifactId> - <version>3.3.2</version> - </dependency> - <dependency> - <groupId>org.apache.commons</groupId> - <artifactId>commons-math3</artifactId> - <version>3.3</version> - </dependency> - <dependency> - <groupId>org.jfree</groupId> - <artifactId>jfreechart</artifactId> - <version>1.0.19</version> - </dependency> - <dependency> - <groupId>joda-time</groupId> - <artifactId>joda-time</artifactId> - <version>${jodatime.version}</version> - </dependency> - <dependency> - <groupId>com.googlecode.java-diff-utils</groupId> - <artifactId>diffutils</artifactId> - <version>1.2.1</version> - </dependency> - <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-log4j12</artifactId> - <version>1.7.10</version> - </dependency> + <build> + <resources> + <resource> + <directory>src/main/resources</directory> + </resource> + </resources> + <testResources> + <testResource> + <directory>src/test/resources</directory> + </testResource> + <testResource> + <directory>${project.basedir}/config</directory> + </testResource> + </testResources> + <plugins> + <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>build-helper-maven-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-failsafe-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-dependency-plugin</artifactId> + <version>${maven-dependency-plugin.version}</version> + </plugin> - <!-- Test Dependencies --> - <dependency> - <groupId>com.jcabi</groupId> - <artifactId>jcabi-jdbc</artifactId> - <version>0.15</version> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <version>4.11</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.hamcrest</groupId> - <artifactId>hamcrest-junit</artifactId> - <version>1.0.0.0</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>com.github.stefanbirkner</groupId> - <artifactId>system-rules</artifactId> - <version>1.8.0</version> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-testing-util</artifactId> - <version>${hbase.version}</version> - <scope>test</scope> - <optional>true</optional> - <exclusions> - <exclusion> - <groupId>org.jruby</groupId> - <artifactId>jruby-complete</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-it</artifactId> - <version>${hbase.version}</version> - <type>test-jar</type> - <scope>test</scope> - <exclusions> - <exclusion> - <groupId>org.jruby</groupId> - <artifactId>jruby-complete</artifactId> - </exclusion> - </exclusions> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-common</artifactId> - <version>${hbase.version}</version> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-protocol</artifactId> - <version>${hbase.version}</version> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-client</artifactId> - <version>${hbase.version}</version> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-hadoop-compat</artifactId> - <version>${hbase.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-hadoop-compat</artifactId> - <version>${hbase.version}</version> - <type>test-jar</type> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-hadoop2-compat</artifactId> - <version>${hbase.version}</version> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.hbase</groupId> - <artifactId>hbase-hadoop2-compat</artifactId> - <version>${hbase.version}</version> - <type>test-jar</type> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-common</artifactId> - </dependency> - <dependency> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-mapreduce-client-core</artifactId> - </dependency> - <dependency> - <groupId>org.apache.hadoop</groupId> - <artifactId>hadoop-minicluster</artifactId> - </dependency> - </dependencies> - <build> - <plugins> - <plugin> - <groupId>org.codehaus.mojo</groupId> - <artifactId>build-helper-maven-plugin</artifactId> - </plugin> - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-failsafe-plugin</artifactId> - </plugin> - <plugin> - <artifactId>maven-dependency-plugin</artifactId> - <version>${maven-dependency-plugin.version}</version> - </plugin> - - <plugin> - <groupId>org.apache.maven.plugins</groupId> - <artifactId>maven-compiler-plugin</artifactId> - <version>3.1</version> - <configuration> - <source>1.7</source> - <target>1.7</target> - </configuration> - </plugin> - </plugins> - </build> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>3.1</version> + <configuration> + <source>1.7</source> + <target>1.7</target> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-surefire-plugin</artifactId> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-resources-plugin</artifactId> + </plugin> + <plugin> + <artifactId>maven-assembly-plugin</artifactId> + <executions> + <execution> + <id>make-dependency-jar</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + <configuration> + <descriptorRefs> + <descriptorRef>jar-with-dependencies</descriptorRef> + </descriptorRefs> + <archive> + <manifest> + <mainClass>org.apache.phoenix.pherf.Pherf</mainClass> + </manifest> + </archive> + </configuration> + </execution> + <execution> + <id>make-assembly</id> + <phase>package</phase> + <goals> + <goal>single</goal> + </goals> + <configuration> + <descriptors> + <!-- Produces minimal Pherf jar --> + <descriptor>src/main/assembly/minimal.xml</descriptor> + <!-- Produces standalone zip that bundles all required dependencies --> + <descriptor>src/main/assembly/standalone.xml</descriptor> + <!-- Produces cluster zip with minimal Pherf jar. Setting HBase classpath in env.sh is required for this configuration --> + <descriptor>src/main/assembly/cluster.xml</descriptor> + </descriptors> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> </project> http://git-wip-us.apache.org/repos/asf/phoenix/blob/5f062bd1/phoenix-pherf/src/main/assembly/components-minimal.xml ---------------------------------------------------------------------- diff --git a/phoenix-pherf/src/main/assembly/components-minimal.xml b/phoenix-pherf/src/main/assembly/components-minimal.xml new file mode 100644 index 0000000..38c6929 --- /dev/null +++ b/phoenix-pherf/src/main/assembly/components-minimal.xml @@ -0,0 +1,33 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<component> + <dependencySets> + <dependencySet> + <unpack>true</unpack> + <outputDirectory>/</outputDirectory> + <includes> + <include>org.apache.phoenix:phoenix-pherf</include> + <include>org.jfree:jfreechart</include> + <include>com.googlecode.java-diff-utils:diffutils</include> + <include>org.apache.commons:commons-lang3</include> + <include>org.apache.commons:commons-math3</include> + </includes> + </dependencySet> + </dependencySets> +</component> http://git-wip-us.apache.org/repos/asf/phoenix/blob/5f062bd1/phoenix-pherf/src/main/assembly/minimal.xml ---------------------------------------------------------------------- diff --git a/phoenix-pherf/src/main/assembly/minimal.xml b/phoenix-pherf/src/main/assembly/minimal.xml new file mode 100644 index 0000000..5b1f482 --- /dev/null +++ b/phoenix-pherf/src/main/assembly/minimal.xml @@ -0,0 +1,31 @@ +<!-- + ~ Licensed to the Apache Software Foundation (ASF) under one + ~ or more contributor license agreements. See the NOTICE file + ~ distributed with this work for additional information + ~ regarding copyright ownership. The ASF licenses this file + ~ to you under the Apache License, Version 2.0 (the + ~ "License"); you may not use this file except in compliance + ~ with the License. You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License. + --> + +<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.2 http://maven.apache.org/xsd/assembly-1.1.2.xsd"> + <id>minimal</id> + <baseDirectory>/</baseDirectory> + <formats> + <format>jar</format> + </formats> + <includeBaseDirectory>false</includeBaseDirectory> + <componentDescriptors> + <componentDescriptor>src/main/assembly/components-minimal.xml</componentDescriptor> + </componentDescriptors> +</assembly> http://git-wip-us.apache.org/repos/asf/phoenix/blob/5f062bd1/phoenix-pherf/src/main/assembly/standalone.xml ---------------------------------------------------------------------- diff --git a/phoenix-pherf/src/main/assembly/standalone.xml b/phoenix-pherf/src/main/assembly/standalone.xml index 7163427..dfeb921 100644 --- a/phoenix-pherf/src/main/assembly/standalone.xml +++ b/phoenix-pherf/src/main/assembly/standalone.xml @@ -40,13 +40,12 @@ <include>*sh</include> </includes> </fileSet> - </fileSets> - <dependencySets> - <dependencySet> - <unpack>false</unpack> + <fileSet> + <directory>${project.build.directory}</directory> <outputDirectory>pherf-${project.version}-standalone/lib</outputDirectory> <includes> + <include>*dependencies.jar</include> </includes> - </dependencySet> - </dependencySets> -</assembly> \ No newline at end of file + </fileSet> + </fileSets> +</assembly>