jclouds/project/pom.xml

648 lines
29 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2009 Cloud Conscious, LLC. <info@cloudconscious.com>
====================================================================
Licensed 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>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-project</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>jclouds Project</name>
<url>http://www.jclouds.org</url>
<description>jclouds: Concurrent API for Cloud Services</description>
<inceptionYear>2009</inceptionYear>
<licenses>
<license>
<name>Apache License</name>
<url>LICENSE.txt</url>
</license>
</licenses>
<organization>
<name>jclouds</name>
<url>http://www.jclouds.org/</url>
</organization>
<issueManagement>
<system>Google Code</system>
<url>http://code.google.com/p/jclouds/issues</url>
</issueManagement>
<mailingLists>
<mailingList>
<name>Contributors</name>
<subscribe>http://groups.google.com/group/jclouds-contributors</subscribe>
<unsubscribe>http://groups.google.com/group/jclouds-contributors</unsubscribe>
<post>jclouds-contributors@googlegroups.com</post>
<archive>http://groups.google.com/group/jclouds-contributors</archive>
</mailingList>
<mailingList>
<name>SVN Commits</name>
<subscribe>http://groups.google.com/group/jclouds-commits</subscribe>
<unsubscribe>http://groups.google.com/group/jclouds-commits</unsubscribe>
<post>jclouds-commits@googlegroups.com</post>
<archive>http://groups.google.com/group/jclouds-commits</archive>
</mailingList>
</mailingLists>
<scm>
<connection>scm:svn:http://jclouds.googlecode.com/svn/trunk</connection>
<developerConnection>scm:svn:https://jclouds.googlecode.com/svn/trunk</developerConnection>
<url>http://jclouds.googlecode.com/svn/trunk</url>
</scm>
<repositories>
<repository>
<id>jclouds-googlecode</id>
<url>http://jclouds.googlecode.com/svn/repo</url>
</repository>
<repository>
<id>jclouds-rimu</id>
<url>http://jclouds.rimuhosting.com/maven2/snapshots</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>jboss</id>
<url>http://repository.jboss.org/maven2/</url>
</repository>
<repository>
<id>googlecode.java-xmlbuilder</id>
<url>http://java-xmlbuilder.googlecode.com/svn/repo</url>
</repository>
</repositories>
<distributionManagement>
<repository>
<uniqueVersion>false</uniqueVersion>
<id>jclouds-googlecode-deploy</id>
<url>svn:https://jclouds.googlecode.com/svn/repo</url>
</repository>
<snapshotRepository>
<id>jclouds-rimu-snapshots</id>
<url>dav:http://jclouds.rimuhosting.com/maven2/snapshots/</url>
</snapshotRepository>
<site>
<id>website</id>
<name>website</name>
<url>file://${basedir}/target/dist/site/jclouds-testing/</url>
</site>
</distributionManagement>
<pluginRepositories>
<pluginRepository>
<id>central</id>
<url>http://repo1.maven.org/maven2</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>jclouds-googlecode</id>
<url>http://jclouds.googlecode.com/svn/repo</url>
</pluginRepository>
</pluginRepositories>
<developers>
<developer>
<name>Adrian Cole</name>
<id>ferncam1</id>
<email>adrian -at- jclouds.org</email>
<organization>jclouds</organization>
<roles>
<role>Java Developer</role>
<role>PMC</role>
</roles>
<url>http://www.jclouds.org</url>
<timezone>+0</timezone>
</developer>
<developer>
<name>Andrew Phillips</name>
<id>sharedocs1</id>
<email>aphillips -at- qrmedia.com</email>
<roles>
<role>Apprentice</role>
</roles>
<timezone>+1</timezone>
</developer>
<developer>
<name>Ivan Meredith</name>
<id>barefootnz</id>
<email>ivan -at- ivan.com</email>
<roles>
<role>Java Developer</role>
</roles>
<timezone>+13</timezone>
</developer>
</developers>
<properties>
<!--parent.basedir>${basedir}</parent.basedir-->
<sourceEncoding>UTF-8</sourceEncoding>
<maven.compile.source>1.6</maven.compile.source>
<maven.compile.target>1.6</maven.compile.target>
<maven.compile.optimize>true</maven.compile.optimize>
<maven.compile.deprecation>true</maven.compile.deprecation>
<http.proxyHost></http.proxyHost>
<http.proxyPort></http.proxyPort>
<jclouds.blobstore.httpstream.url>http://mirror.cloudera.com/apache/maven/binaries/apache-maven-2.2.1-bin.tar.bz2</jclouds.blobstore.httpstream.url>
<jclouds.blobstore.httpstream.md5>c581a15cb0001d9b771ad6df7c8156f8</jclouds.blobstore.httpstream.md5>
<jclouds.wire.httpstream.url>http://apache.opensourceresources.org/commons/logging/binaries/commons-logging-1.1.1-bin.tar.gz</jclouds.wire.httpstream.url>
<jclouds.wire.httpstream.md5>e5de09672af9b386c30a311654d8541a</jclouds.wire.httpstream.md5>
<jclouds.test.listener>org.jclouds.test.testng.UnitTestStatusListener</jclouds.test.listener>
<jclouds.test.ssh.keyfile />
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty</artifactId>
<version>7.0.0pre3</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>5.10</version>
<scope>test</scope>
<classifier>jdk15</classifier>
</dependency>
<dependency>
<groupId>org.easymock</groupId>
<artifactId>easymockclassextension</artifactId>
<version>2.4</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<execution>
<id>integration</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<argLine>-Xmx512m -Xms256m -Xss128k</argLine>
<parallel>tests</parallel>
<threadCount>5</threadCount>
<!-- note that the groups/excluded groups don't work due to some problem
in surefire or testng. instead, we have to exclude via file path
<groups>integration</groups>
<excludedGroups>unit,performance,live</excludedGroups> -->
<excludes>
<exclude>**/*LiveTest.java</exclude>
</excludes>
<includes>
<include>**/*IntegrationTest.java</include>
</includes>
</configuration>
</execution>
</executions>
<configuration>
<parallel>methods</parallel>
<threadCount>5</threadCount>
<!-- note that the groups/excluded groups don't work due to some problem
in surefire or testng. instead, we have to exclude via file path
<groups>unit,performance</groups>
<excludedGroups>integration,live</excludedGroups> -->
<excludes>
<exclude>**/*IntegrationTest.java</exclude>
<exclude>**/*LiveTest.java</exclude>
</excludes>
<properties>
<property>
<name>listener</name>
<value>${jclouds.test.listener}</value>
</property>
</properties>
<systemProperties>
<property>
<name>jclouds.test.initializer</name>
<value>${jclouds.test.initializer}</value>
</property>
<property>
<name>jclouds.wire.httpstream.url</name>
<value>${jclouds.wire.httpstream.url}</value>
</property>
<property>
<name>jclouds.wire.httpstream.md5</name>
<value>${jclouds.wire.httpstream.md5}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
</systemProperties>
</configuration>
</plugin>
<!-- make sure we generate src jars too -->
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>2.1.1</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>javadoc</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<encoding>${sourceEncoding}</encoding>
<quiet>true</quiet>
<links>
<link>http://java.sun.com/javase/6/docs/api/</link>
<link>http://java.sun.com/javaee/6/docs/api/</link>
</links>
<footer><![CDATA[
<!-- Google Analytics -->
<script type='text/javascript'>
var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type='text/javascript'>
try {
var pageTracker = _gat._getTracker("UA-8638379-1");
pageTracker._trackPageview();
} catch(err) {}</script>
]]></footer>
</configuration>
</plugin>
<plugin>
<artifactId>maven-enforcer-plugin</artifactId>
<executions>
<execution>
<id>enforce-banned-dependencies</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<bannedDependencies>
<excludes>
<exclude>:maven-dependency-plugin</exclude>
</excludes>
</bannedDependencies>
</rules>
</configuration>
</execution>
<execution>
<id>enforce-java</id>
<goals>
<goal>enforce</goal>
</goals>
<configuration>
<rules>
<requireJavaVersion>
<version>[1.6,)</version>
</requireJavaVersion>
<requireMavenVersion>
<version>[2.2.1,)</version>
</requireMavenVersion>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<encoding>${sourceEncoding}</encoding>
<source>${maven.compile.source}</source>
<target>${maven.compile.target}</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<configuration>
<encoding>${sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifestEntries>
<Specification-Title>jclouds ${pom.name}</Specification-Title>
<Specification-Vendor>jclouds</Specification-Vendor>
<Implementation-Vendor>jclouds</Implementation-Vendor>
<Implementation-Vendor-Id>org.jclouds.aws.s3</Implementation-Vendor-Id>
<Implementation-Version>${pom.version}</Implementation-Version>
<X-Compile-Source-JDK>${maven.compile.source}</X-Compile-Source-JDK>
<X-Compile-Target-JDK>${maven.compile.target}</X-Compile-Target-JDK>
</manifestEntries>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-site-plugin</artifactId>
</plugin>
</plugins>
<extensions>
<extension>
<groupId>org.jvnet.wagon-svn</groupId>
<artifactId>wagon-svn</artifactId>
<version>1.9</version>
</extension>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-webdav</artifactId>
<version>1.0-beta-1</version>
</extension>
</extensions>
</build>
<profiles>
<profile>
<id>live</id>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<executions>
<execution>
<id>integration</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<!-- note that the groups/excluded groups don't work due to some problem
in surefire or testng. instead, we have to exclude via file path
<groups>live,integration</groups>
<excludedGroups>unit,performance</excludedGroups> -->
<excludes>
<exclude>none</exclude>
</excludes>
<includes>
<include>**/*IntegrationTest.java</include>
<include>**/*LiveTest.java</include>
</includes>
<systemProperties>
<!--
If you're behind a proxy, set this here
http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html
<property>
<name>https.proxyHost</name>
<value>proxy</value>
</property>
<property>
<name>https.proxyPort</name>
<value>port</value>
</property>
<property>
<name>https.noProxyHosts</name>
<value>localhost|10.150.4.49</value>
</property>
-->
<property>
<name>file.encoding</name>
<value>${sourceEncoding}</value>
</property>
<property>
<name>jclouds.test.initializer</name>
<value>${jclouds.test.initializer}</value>
</property>
<property>
<name>jclouds.test.user</name>
<value>${jclouds.test.user}</value>
</property>
<property>
<name>jclouds.test.key</name>
<value>${jclouds.test.key}</value>
</property>
<property>
<name>jclouds.test.endpoint</name>
<value>${jclouds.test.endpoint}</value>
</property>
<property>
<name>jclouds.test.appname</name>
<value>${jclouds.test.appname}</value>
</property>
<property>
<name>jclouds.test.appid</name>
<value>${jclouds.test.appid}</value>
</property>
<property>
<name>jclouds.test.ssh.keyfile</name>
<value>${jclouds.test.ssh.keyfile}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.url</name>
<value>${jclouds.blobstore.httpstream.url}</value>
</property>
<property>
<name>jclouds.blobstore.httpstream.md5</name>
<value>${jclouds.blobstore.httpstream.md5}</value>
</property>
<property>
<name>jclouds.wire.httpstream.url</name>
<value>${jclouds.wire.httpstream.url}</value>
</property>
<property>
<name>jclouds.wire.httpstream.md5</name>
<value>${jclouds.wire.httpstream.md5}</value>
</property>
</systemProperties>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>distribution</id>
<build>
<plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<!-- Can't use variables in outputDirectory in earlier versions.
See http://jira.codehaus.org/browse/MASSEMBLY-142. -->
<version>2.2-beta-3</version>
<executions>
<execution>
<id>generate-distribution-files</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<!-- also default since 2.2-beta-3 -->
<ignoreDirFormatExtensions>true</ignoreDirFormatExtensions>
<descriptors>
<descriptor>src-descriptor.xml</descriptor>
<descriptor>jar-with-dependencies-descriptor.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>jclouds-assemblies</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>repackage-jar-with-dependencies</id>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks>
<taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask"/>
<jarjar destfile="${build.directory}/${build.finalName}-jar-with-dependencies.jar" update="true">
<!-- Replace "x.y.." with "org.jclouds.repackaged.x.y..". Note: can't deal with package-info.class files.
See http://code.google.com/p/jarjar/wiki/CommandLineDocs for more information on jarjar rules. -->
<rule pattern="javax.annotation.**" result="${project.groupId}.repackaged.@0"/>
<rule pattern="javax.inject.**" result="${project.groupId}.repackaged.@0"/>
<rule pattern="javax.ws.**" result="${project.groupId}.repackaged.@0"/>
<!-- google-guava and google-collections -->
<rule pattern="com.google.common.**" result="${project.groupId}.repackaged.@0"/>
<!-- guice -->
<rule pattern="com.google.inject.**" result="${project.groupId}.repackaged.@0"/>
</jarjar>
</tasks>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.tonicsystems.jarjar</groupId>
<artifactId>jarjar</artifactId>
<version>1.0-rc8</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<reportSets>
<reportSet>
<reports>
<report>cpd</report>
<report>findbugs</report>
<report>issue-tracking</report>
<report>mail-lists</report>
<report>pmd</report>
<report>rat-report</report>
<report>source-repository</report>
<report>surefire-report</report>
<report>maven-emma-plugin</report>
<report>team-list</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
<configuration>
<encoding>${sourceEncoding}</encoding>
<quiet>true</quiet>
</configuration>
<reportSets>
<reportSet>
<id>default</id>
<reports>
<report>aggregate</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>emma-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>surefire-report-maven-plugin</artifactId>
<inherited>true</inherited>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>rat-maven-plugin</artifactId>
<inherited>true</inherited>
</plugin>
<plugin>
<artifactId>maven-pmd-plugin</artifactId>
<configuration>
<targetJdk>${maven.compile.source}</targetJdk>
</configuration>
<inherited>true</inherited>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<configuration>
<xmlOutput>true</xmlOutput>
</configuration>
<inherited>true</inherited>
</plugin>
</plugins>
</reporting>
</project>