jclouds/project/pom.xml

729 lines
31 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<!--
Copyright (C) 2010 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>
<parent>
<groupId>org.sonatype.oss</groupId>
<artifactId>oss-parent</artifactId>
<version>4</version>
</parent>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-project</artifactId>
<version>1.0-beta-9c-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>Repository 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:git:git://github.com/jclouds/jclouds.git</connection>
<developerConnection>scm:git:ssh://git@github.com/jclouds/jclouds.git</developerConnection>
<url>http://github.com/jclouds/jclouds</url>
</scm>
<repositories>
<repository>
<id>sonatype-nexus-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<distributionManagement>
<repository>
<id>sonatype-nexus-staging</id>
<url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
<uniqueVersion>false</uniqueVersion>
</repository>
<snapshotRepository>
<id>sonatype-nexus-snapshots</id>
<url>https://oss.sonatype.org/content/repositories/snapshots</url>
</snapshotRepository>
<site>
<id>website</id>
<name>website</name>
<url>file://${basedir}/target/dist/site/jclouds-testing/</url>
</site>
</distributionManagement>
<developers>
<developer>
<name>Adrian Cole</name>
<id>ferncam1</id>
<email>adrian -at- jclouds -dot- org</email>
<organization>jclouds</organization>
<roles>
<role>Java Developer</role>
<role>PMC</role>
</roles>
<url>http://www.jclouds.org</url>
<timezone>-8</timezone>
</developer>
<developer>
<name>Hugo Duncan</name>
<id>hugoduncan</id>
<email>tabcdef -at- hugoduncan -dot- org</email>
<roles>
<role>Clojure Developer</role>
</roles>
<timezone>-8</timezone>
</developer>
<developer>
<name>Phil Hagelberg</name>
<id>technomancy</id>
<email>phil -at- technomancy -dot- us</email>
<roles>
<role>Clojure Developer</role>
</roles>
<timezone>-8</timezone>
</developer>
<developer>
<name>Ivan Meredith</name>
<id>barefootnz</id>
<email>ivan -at- ivan -dot- net -dot- nz</email>
<roles>
<role>Java Developer</role>
</roles>
<timezone>+13</timezone>
</developer>
<developer>
<name>Andrew Phillips</name>
<id>demobox</id>
<email>aphillips -at- qrmedia -dot- com</email>
<roles>
<role>Apprentice</role>
</roles>
<timezone>+1</timezone>
</developer>
<developer>
<name>Alex Yarmuda</name>
<id>alexstaytuned</id>
<email>oleksiy -dot- yarmula -at- gmail -dot- com</email>
<roles>
<role>Java Developer</role>
</roles>
<timezone>-8</timezone>
</developer>
<developer>
<name>Chas Emerick</name>
<id>cemerick</id>
<email>cemerick -at- snowtide -dot- com</email>
<roles>
<role>Clojure Developer</role>
</roles>
<timezone>-5</timezone>
</developer>
</developers>
<properties>
<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.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>
<test.ssh.keyfile />
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-ssl</artifactId>
<version>7.0.0.pre5</version>
</dependency>
<dependency>
<groupId>com.jcraft</groupId>
<artifactId>jsch</artifactId>
<version>0.1.44-1</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>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure</artifactId>
<version>1.2.0</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure-contrib</artifactId>
<version>1.2.0</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.github.technomancy</groupId>
<artifactId>swank-clojure</artifactId>
<version>1.2.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<resources>
<resource>
<directory>src/main/clojure</directory>
</resource>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<testResources>
<testResource>
<directory>src/test/clojure</directory>
</testResource>
<testResource>
<directory>src/test/resources</directory>
</testResource>
</testResources>
<plugins>
<plugin>
<groupId>com.theoryinpractise</groupId>
<artifactId>clojure-maven-plugin</artifactId>
<version>1.3.3</version>
<configuration>
<sourceDirectories>
<sourceDirectory>src/main/clojure</sourceDirectory>
</sourceDirectories>
<testSourceDirectories>
<testSourceDirectory>src/test/clojure</testSourceDirectory>
</testSourceDirectories>
<clojureOptions>-Xmx512m -Djava.awt.headless=true -XX:MaxPermSize=256m -Xss256k</clojureOptions>
<warnOnReflection>true</warnOnReflection>
<compileDeclaredNamespaceOnly>true</compileDeclaredNamespaceOnly>
<testDeclaredNamespaceOnly>false</testDeclaredNamespaceOnly>
</configuration>
<executions>
<execution>
<id>test-clojure</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.5</version>
<executions>
<execution>
<id>integration</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<argLine>-Xmx512m -Xms256m -Djava.awt.headless=true -XX:MaxPermSize=256m -Xss256k</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>test.initializer</name>
<value>${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>
<version>2.7</version>
<executions>
<execution>
<id>javadoc</id>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<configuration>
<additionalJOption>-J-Xmx256m</additionalJOption>
<encoding>${project.build.sourceEncoding}</encoding>
<quiet>true</quiet>
<links>
<link>http://download.oracle.com/javase/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>
<version>1.0-beta-1</version>
<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>
<version>2.3</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
<source>${maven.compile.source}</source>
<target>${maven.compile.target}</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>2.4.2</version>
<configuration>
<encoding>${project.build.sourceEncoding}</encoding>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<version>2.3.1</version>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
<configuration>
<archive>
<manifestEntries>
<Specification-Title>jclouds ${project.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>${project.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>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-site-plugin</artifactId>
<version>2.1</version>
</plugin>
<plugin>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.5</version>
</plugin>
<plugin>
<artifactId>maven-install-plugin</artifactId>
<version>2.3</version>
</plugin>
<plugin>
<artifactId>maven-release-plugin</artifactId>
<version>2.1</version>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>live</id>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.5</version>
<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>${project.build.sourceEncoding}</value>
</property>
<property>
<name>test.initializer</name>
<value>${test.initializer}</value>
</property>
<property>
<name>test.ssh.keyfile</name>
<value>${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>
<version>2.2-beta-5</version>
<executions>
<execution>
<id>generate-distribution-files</id>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
<configuration>
<!-- also default since 2.2-SNAPSHOT -->
<ignoreDirFormatExtensions>true</ignoreDirFormatExtensions>
<descriptors>
<descriptor>src-descriptor.xml</descriptor>
<descriptor>provided-dependencies-descriptor.xml</descriptor>
<descriptor>jar-with-dependencies-no-core-no-apis-descriptor.xml</descriptor>
</descriptors>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.jclouds</groupId>
<artifactId>jclouds-assemblies</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
<!-- modifies the plugin config inherited from oss-parent -->
<profile>
<id>sonatype-release-profile-extension</id>
<activation>
<property>
<name>performRelease</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-gpg-plugin</artifactId>
<configuration>
<executable>${gpg.command}</executable>
<passphrase>${gpg.passphrase}</passphrase>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>clojure-1.1</id>
<dependencies>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure</artifactId>
<version>1.1.0</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.clojure</groupId>
<artifactId>clojure-contrib</artifactId>
<version>1.1.0</version>
<optional>true</optional>
</dependency>
</dependencies>
</profile>
</profiles>
<reporting>
<plugins>
<plugin>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.1.2</version>
<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>${project.build.sourceEncoding}</encoding>
<quiet>true</quiet>
</configuration>
<reportSets>
<reportSet>
<id>default</id>
<reports>
<report>aggregate</report>
</reports>
</reportSet>
</reportSets>
</plugin>
<plugin>
<groupId>org.sonatype.maven.plugin</groupId>
<artifactId>emma-maven-plugin</artifactId>
<version>1.2</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>surefire-report-maven-plugin</artifactId>
<version>2.0-beta-1</version>
<inherited>true</inherited>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>rat-maven-plugin</artifactId>
<version>1.0-alpha-3</version>
<inherited>true</inherited>
</plugin>
<plugin>
<artifactId>maven-pmd-plugin</artifactId>
<version>2.4</version>
<configuration>
<targetJdk>${maven.compile.source}</targetJdk>
</configuration>
<inherited>true</inherited>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId>
<version>2.3.1</version>
<configuration>
<xmlOutput>true</xmlOutput>
</configuration>
<inherited>true</inherited>
</plugin>
</plugins>
</reporting>
</project>