| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| 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</groupId> |
| <artifactId>apache</artifactId> |
| <version>7</version> |
| </parent> |
| |
| <groupId>org.apache.whirr</groupId> |
| <artifactId>whirr</artifactId> |
| <version>0.7.2-SNAPSHOT</version> |
| <packaging>pom</packaging> |
| |
| <name>Whirr</name> |
| <description>Libraries for running cloud services</description> |
| <url>http://whirr.apache.org/</url> |
| <inceptionYear>2010</inceptionYear> |
| |
| <modules> |
| <module>build-tools</module> |
| <module>cli</module> |
| <module>core</module> |
| <module>examples</module> |
| <module>services/cassandra</module> |
| <module>services/cdh</module> |
| <module>services/cdh-oldtests</module> |
| <module>services/ganglia</module> |
| <module>services/hadoop</module> |
| <module>services/yarn</module> |
| <module>services/zookeeper</module> |
| <module>services/hbase</module> |
| <module>services/elasticsearch</module> |
| <module>services/hama</module> |
| <module>services/puppet</module> |
| <module>services/chef</module> |
| <module>services/mahout</module> |
| <module>services/pig</module> |
| </modules> |
| |
| <properties> |
| <jclouds.version>1.2.2</jclouds.version> |
| </properties> |
| |
| <dependencyManagement> |
| <dependencies> |
| <dependency> |
| <groupId>com.google.guava</groupId> |
| <artifactId>guava</artifactId> |
| <version>10.0.1</version> |
| </dependency> |
| <dependency> |
| <groupId>ca.juliusdavies</groupId> |
| <artifactId>not-yet-commons-ssl</artifactId> |
| <version>0.3.11</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds</groupId> |
| <artifactId>jclouds-core</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds</groupId> |
| <artifactId>jclouds-compute</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds.api</groupId> |
| <artifactId>byon</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds.driver</groupId> |
| <artifactId>jclouds-sshj</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds.driver</groupId> |
| <artifactId>jclouds-slf4j</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds.driver</groupId> |
| <artifactId>jclouds-enterprise</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds</groupId> |
| <artifactId>jclouds-allcompute</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>org.jclouds</groupId> |
| <artifactId>jclouds-allblobstore</artifactId> |
| <version>${jclouds.version}</version> |
| </dependency> |
| <dependency> |
| <groupId>junit</groupId> |
| <artifactId>junit</artifactId> |
| <version>4.8.1</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.hamcrest</groupId> |
| <artifactId>hamcrest-all</artifactId> |
| <version>1.1</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.mockito</groupId> |
| <artifactId>mockito-all</artifactId> |
| <version>1.8.5</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>commons-httpclient</groupId> |
| <artifactId>commons-httpclient</artifactId> |
| <version>3.1</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-configuration</groupId> |
| <artifactId>commons-configuration</artifactId> |
| <version>1.7</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-io</groupId> |
| <artifactId>commons-io</artifactId> |
| <version>1.4</version> |
| </dependency> |
| <dependency> |
| <groupId>commons-codec</groupId> |
| <artifactId>commons-codec</artifactId> |
| <version>1.4</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-api</artifactId> |
| <version>1.6.0</version> |
| </dependency> |
| <dependency> |
| <groupId>org.slf4j</groupId> |
| <artifactId>slf4j-log4j12</artifactId> |
| <version>1.6.0</version> |
| </dependency> |
| <dependency> |
| <groupId>log4j</groupId> |
| <artifactId>log4j</artifactId> |
| <version>1.2.16</version> |
| <exclusions> |
| <exclusion> |
| <groupId>javax.mail</groupId> |
| <artifactId>mail</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>javax.jms</groupId> |
| <artifactId>jms</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jdmk</groupId> |
| <artifactId>jmxtools</artifactId> |
| </exclusion> |
| <exclusion> |
| <groupId>com.sun.jmx</groupId> |
| <artifactId>jmxri</artifactId> |
| </exclusion> |
| </exclusions> |
| </dependency> |
| <dependency> |
| <groupId>com.jcraft</groupId> |
| <artifactId>jsch</artifactId> |
| <version>0.1.44-1</version> |
| </dependency> |
| <dependency> |
| <groupId>dnsjava</groupId> |
| <artifactId>dnsjava</artifactId> |
| <version>2.1.1</version> |
| </dependency> |
| <dependency> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>jackson-core-asl</artifactId> |
| <version>1.5.2</version> |
| <scope>test</scope> |
| </dependency> |
| <dependency> |
| <groupId>org.codehaus.jackson</groupId> |
| <artifactId>jackson-mapper-asl</artifactId> |
| <version>1.5.2</version> |
| <scope>test</scope> |
| </dependency> |
| </dependencies> |
| </dependencyManagement> |
| |
| <build> |
| <extensions> |
| <extension> |
| <groupId>org.apache.maven.wagon</groupId> |
| <artifactId>wagon-ssh-external</artifactId> |
| <version>1.0-beta-6</version> |
| </extension> |
| </extensions> |
| <plugins> |
| <!-- Plugins in alphabetical order: by group then artifact --> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>2.2.2</version> |
| <configuration> |
| <appendAssemblyId>false</appendAssemblyId> |
| <tarLongFileMode>gnu</tarLongFileMode> |
| <descriptors> |
| <descriptor>build-tools/src/assemble-bin.xml</descriptor> |
| </descriptors> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-checkstyle-plugin</artifactId> |
| <version>2.8</version> |
| <dependencies> |
| <dependency> |
| <groupId>org.apache.whirr</groupId> |
| <artifactId>whirr-build-tools</artifactId> |
| <version>${project.version}</version> |
| </dependency> |
| </dependencies> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>checkstyle</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <configLocation>checkstyle.xml</configLocation> |
| <includeTestSourceDirectory>true</includeTestSourceDirectory> |
| <failsOnError>true</failsOnError> |
| <!-- HBaseServiceController fails checkstyle since Thrift TException cannot be found. |
| Probably a classpath issue, so until that is fixed, we exclude the class. --> |
| <excludes>**/org/apache/whirr/service/hbase/integration/HBaseServiceController.java</excludes> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-compiler-plugin</artifactId> |
| <version>2.3.2</version> |
| <configuration> |
| <source>1.6</source> |
| <target>1.6</target> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-enforcer-plugin</artifactId> |
| <version>1.0.1</version> |
| <executions> |
| <execution> |
| <id>enforce-java</id> |
| <goals> |
| <goal>enforce</goal> |
| </goals> |
| <configuration> |
| <rules> |
| <requireMavenVersion> |
| <version>[3.0.2,)</version> |
| </requireMavenVersion> |
| </rules> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-jar-plugin</artifactId> |
| <version>2.3.2</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>test-jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <archive> |
| <manifest> |
| <addDefaultImplementationEntries>true</addDefaultImplementationEntries> |
| <addDefaultSpecificationEntries>true</addDefaultSpecificationEntries> |
| </manifest> |
| </archive> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.8</version> |
| <configuration> |
| <excludePackageNames>org.jclouds.*</excludePackageNames> |
| </configuration> |
| <executions> |
| <execution> |
| <id>aggregate</id> |
| <goals> |
| <goal>aggregate</goal> |
| </goals> |
| <phase>site</phase> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-remote-resources-plugin</artifactId> |
| <version>1.2.1</version> |
| <executions> |
| <execution> |
| <goals> |
| <goal>process</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <resourceBundles> |
| <resourceBundle>org.apache:apache-jar-resource-bundle:1.4</resourceBundle> |
| </resourceBundles> |
| </configuration> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-source-plugin</artifactId> |
| <version>2.1.2</version> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-surefire-plugin</artifactId> |
| <version>2.11</version> |
| <configuration> |
| <excludes> |
| <exclude>**/integration/*Test.java</exclude> |
| </excludes> |
| </configuration> |
| </plugin> |
| <!-- mvn apache-rat:check - runs RAT check on the source --> |
| <plugin> |
| <groupId>org.apache.rat</groupId> |
| <artifactId>apache-rat-plugin</artifactId> |
| <version>0.8</version> |
| <executions> |
| <execution> |
| <phase>package</phase> |
| <goals> |
| <goal>check</goal> |
| </goals> |
| </execution> |
| </executions> |
| <configuration> |
| <excludes> |
| <exclude>**/BUILD.txt</exclude> |
| <exclude>**/CHANGES.txt</exclude> |
| <exclude>**/NOTICE-src.txt</exclude> |
| <exclude>.git/**</exclude> |
| <exclude>.gitignore</exclude> |
| <exclude>**/*.json</exclude> |
| <exclude>**/src/test/resources/*.txt</exclude> |
| <exclude>**/src/main/resources/version-banner.txt</exclude> |
| <exclude>docs/**</exclude> |
| <exclude>**/*.log*</exclude> |
| <exclude>.idea/**</exclude> |
| <exclude>**/*.iml</exclude> |
| <exclude>**/.project</exclude> |
| <exclude>**/.classpath</exclude> |
| <exclude>**/.settings/**</exclude> |
| <exclude>**/.checkstyle</exclude> |
| <exclude>**/target/**</exclude> |
| <exclude>src/site/resources/images/whirr-logo.ai</exclude> <!-- binary --> |
| </excludes> |
| </configuration> |
| </plugin> |
| </plugins> |
| <pluginManagement> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-site-plugin</artifactId> |
| <version>3.0</version> |
| <configuration> |
| <!-- Reports are generated at the site level --> |
| <generateReports>false</generateReports> |
| <templateDirectory>${basedir}/src/site/resources</templateDirectory> |
| <template>site.vm</template> |
| <relativizeDecorationLinks>false</relativizeDecorationLinks> |
| </configuration> |
| </plugin> |
| </plugins> |
| </pluginManagement> |
| </build> |
| |
| <repositories> |
| <repository> |
| <id>apache.snapshots</id> |
| <name>Apache Snapshot Repository</name> |
| <url>http://repository.apache.org/snapshots</url> |
| <releases> |
| <enabled>false</enabled> |
| </releases> |
| </repository> |
| <repository> |
| <id>cloudera</id> |
| <url>https://repository.cloudera.com/content/repositories/releases/</url> |
| </repository> |
| </repositories> |
| <pluginRepositories> |
| <pluginRepository> |
| <id>apache-snapshots</id> |
| <url>https://repository.apache.org/content/repositories/snapshots</url> |
| </pluginRepository> |
| </pluginRepositories> |
| <distributionManagement> |
| <repository> |
| <id>apache.staging.https</id> |
| <name>Nexus Staging Repo</name> |
| <url>https://repository.apache.org/service/local/staging/deploy/maven2/</url> |
| </repository> |
| <site> |
| <id>apache.website</id> |
| <url>scpexe://people.apache.org/www/whirr.apache.org/docs/${project.version}</url> |
| </site> |
| </distributionManagement> |
| <profiles> |
| <profile> |
| <!-- Used only when cutting a full release. Configures the deploy plugin to mark |
| each artifact as a release (especially important for the archetype). Signs each |
| file deployed (it actually signs way too many files and we have to clean up a bit |
| once deployed). --> |
| <id>deploy</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-gpg-plugin</artifactId> |
| <version>1.4</version> |
| <executions> |
| <execution> |
| <id>sign-artifacts</id> |
| <phase>verify</phase> |
| <goals> |
| <goal>sign</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| <properties> |
| <update-release-info>true</update-release-info> |
| <!-- Don't re-run tests as part of the deploy build. |
| Note we use skipTests, not maven.test.skip, since the latter skips |
| compilation too and we want to deploy tests. --> |
| <skipTests>true</skipTests> |
| </properties> |
| </profile> |
| <profile> |
| <!-- Only bind Javadoc JARs when the javadoc profile is active, since it is slow. --> |
| <id>javadoc</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-javadoc-plugin</artifactId> |
| <version>2.8</version> |
| <configuration> |
| <excludePackageNames>org.jclouds.*</excludePackageNames> |
| </configuration> |
| <executions> |
| <execution> |
| <id>aggregate</id> |
| <goals> |
| <goal>aggregate</goal> |
| </goals> |
| <phase>site</phase> |
| </execution> |
| <execution> |
| <id>attach-javadocs</id> |
| <goals> |
| <goal>jar</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <!-- Run integration tests against real cloud providers. --> |
| <id>integration</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-failsafe-plugin</artifactId> |
| <version>2.11</version> |
| <configuration> |
| <includes> |
| <include>**/integration/*Test.java</include> |
| </includes> |
| </configuration> |
| <executions> |
| <execution> |
| <id>integration-test</id> |
| <goals> |
| <goal>integration-test</goal> |
| </goals> |
| </execution> |
| <execution> |
| <id>verify</id> |
| <goals> |
| <goal>verify</goal> |
| </goals> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <!-- Build the source distribution. This is written as a profile |
| since it doesn't work in child modules. --> |
| <id>package</id> |
| <build> |
| <plugins> |
| <plugin> |
| <groupId>org.apache.maven.plugins</groupId> |
| <artifactId>maven-assembly-plugin</artifactId> |
| <version>2.2.2</version> |
| <configuration> |
| <descriptors> |
| <descriptor>build-tools/src/assemble-src.xml</descriptor> |
| </descriptors> |
| </configuration> |
| <executions> |
| <execution> |
| <id>dist-assembly</id> |
| <phase>package</phase> |
| <goals> |
| <goal>single</goal> |
| </goals> |
| <configuration> |
| <appendAssemblyId>true</appendAssemblyId> |
| <runOnlyAtExecutionRoot>true</runOnlyAtExecutionRoot> |
| <tarLongFileMode>gnu</tarLongFileMode> |
| </configuration> |
| </execution> |
| </executions> |
| </plugin> |
| </plugins> |
| </build> |
| </profile> |
| <profile> |
| <!-- Activate this profile to build the Voldemort service after manually |
| placing the Voldemort JAR in services/voldemort/lib. |
| See https://issues.apache.org/jira/browse/WHIRR-442 |
| --> |
| <id>voldemort</id> |
| <modules> |
| <module>services/voldemort</module> |
| </modules> |
| </profile> |
| </profiles> |
| </project> |