<?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>14</version>
    <relativePath />
  </parent>
  <groupId>org.apache.jclouds</groupId>
  <artifactId>jclouds-project</artifactId>
  <version>1.8.0-SNAPSHOT</version>
  <packaging>pom</packaging>
  <name>Apache jclouds Project</name>
  <url>http://jclouds.apache.org/</url>
  <description>Apache jclouds: Concurrent API for Cloud Services</description>
  <inceptionYear>2009</inceptionYear>

  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>


  <issueManagement>
    <system>JIRA</system>
    <url>https://issues.apache.org/jira/browse/JCLOUDS</url>
  </issueManagement>


  <mailingLists>
    <mailingList>
      <name>User List</name>
      <subscribe>user-subscribe@jclouds.apache.org</subscribe>
      <unsubscribe>user-unsubscribe@jclouds.apache.org</unsubscribe>
      <post>user@jclouds.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/jclouds-user/</archive>
    </mailingList>
    <mailingList>
      <name>Developer List</name>
      <subscribe>dev-subscribe@jclouds.apache.org</subscribe>
      <unsubscribe>dev-unsubscribe@jclouds.apache.org</unsubscribe>
      <post>dev@jclouds.apache.org</post>
      <archive>http://mail-archives.apache.org/mod_mbox/jclouds-dev/</archive>
    </mailingList>
    <mailingList>
      <name>Commits List</name>
      <subscribe>commits-subscribe@jclouds.apache.org</subscribe>
      <unsubscribe>commits-unsubscribe@jclouds.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/jclouds-commits/</archive>
    </mailingList>
    <mailingList>
      <name>Issues List</name>
      <subscribe>issues-subscribe@jclouds.apache.org</subscribe>
      <unsubscribe>issues-unsubscribe@jclouds.apache.org</unsubscribe>
      <archive>http://mail-archives.apache.org/mod_mbox/jclouds-issues/</archive>
    </mailingList>
  </mailingLists>

  <scm>
    <connection>scm:git:https://git-wip-us.apache.org/repos/asf/jclouds.git</connection>
    <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/jclouds.git</developerConnection>
    <url>https://git-wip-us.apache.org/repos/asf?p=jclouds.git</url>
    <tag>HEAD</tag>
  </scm>
  
  <repositories>
    <repository>
      <id>apache-snapshots</id>
      <url>https://repository.apache.org/content/repositories/snapshots</url>
      <releases>
        <enabled>false</enabled>
      </releases>
      <snapshots>
        <enabled>true</enabled>
      </snapshots>
    </repository>
  </repositories>

  <distributionManagement>
    <site>
      <id>jclouds-github-pages-site</id>
      <url>${maven.site.url.base}/${project.version}</url>
    </site>
  </distributionManagement>

  <developers>
    <developer>
      <name>Adrian Cole</name>
      <id>adriancole</id>
      <email>adrian -at- jclouds -dot- org</email>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
      <timezone>-8</timezone>
    </developer>
    <developer>
      <name>Andrew Bayer</name>
      <id>abayer</id>
      <email>abayer -at- apache -dot- org</email>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
    <developer>
      <name>Andrew Gaul</name>
      <id>gaul</id>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
    <developer>
      <name>Andrew Phillips</name>
      <id>andrewp</id>
      <email>aphillips -at- qrmedia -dot- com</email>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
      <timezone>+1</timezone>
    </developer>
    <developer>
      <name>Becca Woods</name>
      <id>silkysun</id>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
    <developer>
      <name>Everett Toews</name>
      <id>everett</id>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
    <developer>
      <name>Ignasi Barrera</name>
      <id>nacx</id>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
    <developer>
      <name>Ioannis Canellos</name>
      <id>iocanel</id>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
    <developer>
      <name>Matt Stephenson</name>
      <id>mattstep</id>
      <roles>
        <role>Committer</role>
        <role>PMC Member</role>
      </roles>
    </developer>
  </developers>

  <properties>
    <clojure.version>1.3.0</clojure.version>
    <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>
    <maven.site.url.base>gitsite:git@github.com/jclouds/jclouds-maven-site.git</maven.site.url.base>
    <http.proxyHost />
    <http.proxyPort />
    <jclouds.wire.httpstream.url>http://archive.apache.org/dist/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.blobstore.httpstream.url>${jclouds.wire.httpstream.url}</jclouds.blobstore.httpstream.url>
    <jclouds.blobstore.httpstream.md5>${jclouds.wire.httpstream.md5}</jclouds.blobstore.httpstream.md5>
    <jclouds.test.listener>org.jclouds.test.testng.UnitTestStatusListener</jclouds.test.listener>
    <test.ssh.keyfile />
    <sourceReleaseAssemblyDescriptor>source-release-zip-tar</sourceReleaseAssemblyDescriptor>
    <okhttp.version>1.6.0</okhttp.version>
    <surefire.version>2.17</surefire.version>
  </properties>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jsch</artifactId>
        <version>0.1.49</version>
      </dependency>
      <dependency>
        <groupId>org.clojure</groupId>
        <artifactId>clojure</artifactId>
        <version>${clojure.version}</version>
      </dependency>
      <dependency>
        <groupId>org.clojure</groupId>
        <artifactId>tools.logging</artifactId>
        <version>0.2.3</version>
      </dependency>
      <dependency>
        <groupId>org.clojure</groupId>
        <artifactId>core.incubator</artifactId>
        <version>0.1.0</version>
      </dependency>
      <dependency>
        <groupId>org.easymock</groupId>
        <artifactId>easymockclassextension</artifactId>
        <version>3.1</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-security</artifactId>
        <version>8.1.8.v20121106</version>
      </dependency>
      <dependency>
        <groupId>org.eclipse.jetty</groupId>
        <artifactId>jetty-server</artifactId>
        <version>8.1.8.v20121106</version>
      </dependency>
      <dependency>
        <groupId>com.squareup.okhttp</groupId>
        <artifactId>mockwebserver</artifactId>
        <version>${okhttp.version}</version>
      </dependency>
      <dependency>
        <groupId>org.testng</groupId>
        <artifactId>testng</artifactId>
        <version>6.8.8</version>
        <exclusions>
          <exclusion>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
          </exclusion>
        </exclusions>
      </dependency>
      <dependency>
        <groupId>xmlunit</groupId>
        <artifactId>xmlunit</artifactId>
        <version>1.3</version>
      </dependency>
      <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.1.2</version>
      </dependency>
      <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>1.1.2</version>
      </dependency>
    </dependencies>
  </dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.testng</groupId>
      <artifactId>testng</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.easymock</groupId>
      <artifactId>easymockclassextension</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>xmlunit</groupId>
      <artifactId>xmlunit</artifactId>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.clojure</groupId>
      <artifactId>clojure</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.clojure</groupId>
      <artifactId>tools.logging</artifactId>
      <optional>true</optional>
    </dependency>
    <dependency>
      <groupId>org.clojure</groupId>
      <artifactId>core.incubator</artifactId>
      <optional>true</optional>
    </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>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>2.4</version>
        <configuration>
          <useReleaseProfile>false</useReleaseProfile>
          <goals>deploy</goals>
          <arguments>-Pdoc -Papache-release ${arguments}</arguments>
        </configuration>
      </plugin>
      
      <plugin>
        <groupId>org.apache.rat</groupId>
        <artifactId>apache-rat-plugin</artifactId>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
        <configuration>
          <excludes>
            <!-- expectation files for unit tests -->
            <exclude>**/src/test/resources/**/*.sh</exclude>
            <exclude>**/src/test/resources/**/*.bat</exclude>
            <exclude>**/src/test/resources/**/*.cmd</exclude>
            <exclude>**/src/test/resources/**/*.txt</exclude>
            <exclude>**/src/test/resources/**/*.gz</exclude>
            <exclude>**/src/test/resources/**/*.xml</exclude>
            
            <!-- META-INF/services files -->
            <exclude>**/services/*LoggingModule</exclude>
            <exclude>**/services/*ApiMetadata</exclude>
            <exclude>**/services/*ProviderMetadata</exclude>

            <!-- prevent duplicating license -->
            <exclude>**/LICENSE.txt</exclude>
            <exclude>**/header.txt</exclude>

            <!-- high-level project metadata -->
            <exclude>**/NOTICE.txt</exclude>
            <exclude>**/DISCLAIMER</exclude>
            <exclude>**/BUILD.txt</exclude>
            <exclude>**/CHANGES.txt</exclude>
            <exclude>**/README.md</exclude>
            <exclude>**/README.txt</exclude>
            <exclude>**/DEPENDENCIES</exclude>
            <exclude>**/CONTRIBUTING.md</exclude>

            <!-- reference data lists -->
            <exclude>**/*json</exclude>
            <exclude>**/*readme</exclude>

            <!-- SSH keys -->
            <exclude>**/test</exclude>
            <exclude>**/test.pub</exclude>

            <!-- temporary files or those generated by IDE or SCM -->
            <exclude>**/target/**</exclude>
            <exclude>**/test-output/**</exclude>
            <exclude>**/bin/**</exclude>
            <exclude>**/.settings/**</exclude>
            <exclude>**/.classpath</exclude>
            <exclude>**/.dir-locals.el</exclude>
            <exclude>**/.project</exclude>
            <exclude>**/.idea/**</exclude>
            <exclude>**/*.iml</exclude>
            <exclude>**/*.eml</exclude>
            <exclude>**/*.ipr</exclude>
            <exclude>**/*.iws</exclude>
            <exclude>**/*.DS_STORE</exclude>
            <exclude>**/TAGS</exclude>
            <exclude>**/.metadata/**</exclude>
            <exclude>**/atlassian-ide-plugin.xml</exclude>
            <exclude>**/.DS_Store</exclude>
            <exclude>.mailmap</exclude>
            <exclude>.git/**</exclude>
            <exclude>**/.gitignore</exclude>
            <exclude>**/.gitattributes</exclude>

            <!-- Temporary files generated on CloudBees slaves -->
            <exclude>.repository/**</exclude>
            <exclude>gc.log</exclude>
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>com.ning.maven.plugins</groupId>
        <artifactId>maven-duplicate-finder-plugin</artifactId>
        <version>1.0.5</version>
        <configuration>
          <exceptions>
            <exception>
              <!-- CloudSigma bundles conflict between api and providers-->
              <conflictingDependencies>
                <dependency>
                  <groupId>org.apache.jclouds.api</groupId>
                  <artifactId>cloudsigma</artifactId>
                  <version>${project.version}</version>
                </dependency>
                <dependency>
                  <groupId>org.apache.jclouds.provider</groupId>
                  <artifactId>cloudsigma-lvs</artifactId>
                  <version>${project.version}</version>
                </dependency>
                <dependency>
                  <groupId>org.apache.jclouds.provider</groupId>
                  <artifactId>cloudsigma-zrh</artifactId>
                  <version>${project.version}</version>
                </dependency>
              </conflictingDependencies>
              <packages>
                <package>org.jclouds.cloudsigma</package>
              </packages>
            </exception>
            <exception>
              <!-- Google App Engine Deps, some google classes are duplicated between packages -->
              <conflictingDependencies>
                <dependency>
                  <groupId>com.google.appengine</groupId>
                  <artifactId>appengine-api-1.0-sdk</artifactId>
                  <version>1.6.5</version>
                </dependency>
                <dependency>
                  <groupId>com.google.appengine</groupId>
                  <artifactId>appengine-testing</artifactId>
                  <version>1.6.5</version>
                  <scope>test</scope>
                </dependency>
              </conflictingDependencies>
              <packages>
                <package>com.google</package>
              </packages>
            </exception>
            <exception>
              <conflictingDependencies>
                <dependency>
                  <groupId>com.jcraft</groupId>
                  <artifactId>jsch.agentproxy.core</artifactId>
                  <version>0.0.7</version>
                </dependency>
                <dependency>
                  <groupId>com.jcraft</groupId>
                  <artifactId>jsch.agentproxy.connector-factory</artifactId>
                  <version>0.0.7</version>
                </dependency>
              </conflictingDependencies>
              <packages>
                <package>com.jcraft.jsch.agentproxy</package>
              </packages>
            </exception>
          </exceptions>
          <ignoredResources>
            <!-- For all the jetty packages -->
            <ignoredResource>about\.html</ignoredResource>
            <!-- There are several situations where a test-jar and another test-jar or a bundle conflict on these artifacts -->
            <ignoredResource>log4j.xml</ignoredResource>
            <ignoredResource>os.xml</ignoredResource>
            <ignoredResource>virtualhardwaresection.xml</ignoredResource>
            <ignoredResource>logback.xml</ignoredResource>
            <ignoredResource>amzn_images.xml</ignoredResource>
            <ignoredResource>test.jks</ignoredResource>
            <ignoredResource>CreateInternetService-options-test.xml</ignoredResource>
            <ignoredResource>.gitattributes</ignoredResource>
            <ignoredResource>OSGI-OPT/bnd.bnd</ignoredResource>
            <!-- For bouncycastle -->
            <ignoredResource>META-INF/BCKEY.DSA</ignoredResource>
            <ignoredResource>META-INF/BCKEY.SF</ignoredResource>
          </ignoredResources>
          <failBuildInCaseOfConflict>true</failBuildInCaseOfConflict>
          <skip>${skipDuplicateFinder}</skip>
        </configuration>
        <executions>
          <execution>
            <phase>verify</phase>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>${surefire.version}</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>
          <systemPropertyVariables>
            <sun.net.http.allowRestrictedHeaders>true</sun.net.http.allowRestrictedHeaders>
            <jclouds.wire.httpstream.url>${jclouds.wire.httpstream.url}</jclouds.wire.httpstream.url>
            <jclouds.wire.httpstream.md5>${jclouds.wire.httpstream.md5}</jclouds.wire.httpstream.md5>
          </systemPropertyVariables>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-enforcer-plugin</artifactId>
        <version>1.1.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>[3.0.2,)</version>
                </requireMavenVersion>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version>
        <configuration>
          <encoding>${project.build.sourceEncoding}</encoding>
          <source>${maven.compile.source}</source>
          <target>${maven.compile.target}</target>
            <showDeprecation>false</showDeprecation>
            <showWarnings>true</showWarnings>
            <compilerArgs>
              <compilerArg>-Xlint</compilerArg>
              <compilerArg>-Xlint:-deprecation</compilerArg>
              <compilerArg>-Xlint:-rawtypes</compilerArg>
              <compilerArg>-Xlint:-serial</compilerArg>
              <compilerArg>-Xlint:-unchecked</compilerArg>
            </compilerArgs>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-resources-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <encoding>${project.build.sourceEncoding}</encoding>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-jar-plugin</artifactId>
        <version>2.4</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</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>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>2.3.7</version>
        <extensions>true</extensions>
        <configuration>
          <obrRepository>NONE</obrRepository>
          <instructions>
            <Bundle-Activator>${jclouds.osgi.activator}</Bundle-Activator>
            <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
            <Export-Package>${jclouds.osgi.export}</Export-Package>
            <Import-Package>${jclouds.osgi.import}</Import-Package>
            <DynamicImport-Package>${jclouds.osgi.dynamic}</DynamicImport-Package>
            <Fragment-Host>${jclouds.osgi.fragment}</Fragment-Host>
          </instructions>
        </configuration>
      </plugin>
      <plugin>
        <artifactId>maven-checkstyle-plugin</artifactId>
        <version>2.12.1</version>
        <configuration>
          <!-- configLocation configured via profiles -->
          <violationSeverity>warning</violationSeverity>
          <includeTestSourceDirectory>true</includeTestSourceDirectory>
        </configuration>
      </plugin>
    </plugins>
    <pluginManagement>
      <plugins>
        <plugin>
          <artifactId>maven-archetype-plugin</artifactId>
          <version>2.2</version>
        </plugin>
        <plugin>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>2.3</version>
        </plugin>
        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <version>2.7</version>
        </plugin>
        <plugin>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>1.1.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-install-plugin</artifactId>
          <version>2.4</version>
        </plugin>
        <plugin>
          <artifactId>maven-jxr-plugin</artifactId>
          <version>2.3</version>
        </plugin>
        <plugin>
          <artifactId>maven-pmd-plugin</artifactId>
          <version>2.7.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-project-info-reports-plugin</artifactId>
          <version>2.5.1</version>
        </plugin>
        <plugin>
          <artifactId>maven-site-plugin</artifactId>
          <version>3.3</version>
          <configuration>
            <outputEncoding>${project.build.sourceEncoding}</outputEncoding>
            <reportPlugins>
              <plugin>
                <artifactId>maven-project-info-reports-plugin</artifactId>
                <reportSets>
                  <reportSet>
                    <reports>
                      <report>index</report>
                      <report>project-team</report>
                      <report>mailing-list</report>
                      <report>issue-tracking</report>
                      <report>license</report>
                      <report>scm</report>
                    </reports>
                  </reportSet>
                </reportSets>
              </plugin>
              <plugin>
                <artifactId>maven-javadoc-plugin</artifactId>
                <version>2.9</version>
                <configuration>
                  <encoding>${project.build.sourceEncoding}</encoding>
                  <quiet>true</quiet>
                  <maxmemory>256m</maxmemory>
                </configuration>
                <reportSets>
                  <reportSet>
                    <id>default</id>
                    <reports>
                      <report>javadoc</report>
                      <report>aggregate</report>
                    </reports>
                  </reportSet>
                </reportSets>
              </plugin>
              <plugin>
                <groupId>org.sonatype.maven.plugin</groupId>
                <artifactId>emma-maven-plugin</artifactId>
                <version>1.2</version>
                <configuration>
                  <formats>html,xml</formats>
                </configuration>
              </plugin>
              <plugin>
                <artifactId>maven-jxr-plugin</artifactId>
              </plugin>
              <plugin>
                <artifactId>maven-surefire-report-plugin</artifactId>
              </plugin>
              <plugin>
                <groupId>org.apache.rat</groupId>
                <artifactId>apache-rat-plugin</artifactId>
              </plugin>
              <plugin>
                <artifactId>maven-pmd-plugin</artifactId>
                <configuration>
                  <targetJdk>${maven.compile.source}</targetJdk>
                </configuration>
              </plugin>
              <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>findbugs-maven-plugin</artifactId>
                <configuration>
                  <xmlOutput>true</xmlOutput>
                </configuration>
              </plugin>
            </reportPlugins>
            <stagingRepositoryId>${project.distributionManagement.site.id}</stagingRepositoryId>
          </configuration>
          <dependencies>
            <dependency>
              <groupId>com.github.stephenc.wagon</groupId>
              <artifactId>wagon-gitsite</artifactId>
              <version>0.4.1</version>
            </dependency>
          </dependencies>
        </plugin>
        <plugin>
          <artifactId>maven-surefire-report-plugin</artifactId>
          <version>${surefire.version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.rat</groupId>
          <artifactId>apache-rat-plugin</artifactId>
          <version>0.10</version>
        </plugin>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>findbugs-maven-plugin</artifactId>
          <version>2.5.4</version>
        </plugin>
        <plugin>
          <groupId>org.sonatype.maven.plugin</groupId>
          <artifactId>emma-maven-plugin</artifactId>
          <version>1.2</version>
        </plugin>
        <plugin>
          <groupId>com.theoryinpractise</groupId>
          <artifactId>clojure-maven-plugin</artifactId>
          <version>1.3.10</version>
          <configuration>
            <sourceDirectories>
              <sourceDirectory>src/main/clojure</sourceDirectory>
            </sourceDirectories>
            <testSourceDirectories>
              <testSourceDirectory>src/test/clojure</testSourceDirectory>
            </testSourceDirectories>
            <clojureOptions>-Xms128m -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>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>2.9</version>
          <configuration>
            <maxmemory>256m</maxmemory>
            <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>
      </plugins>
    </pluginManagement>
  </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>
                  <systemPropertyVariables>
                    <!--
                        If you're behind a proxy, set this here
                        http://java.sun.com/javase/6/docs/technotes/guides/net/proxies.html

<https.proxyHost>proxy</https.proxyHost>
<https.proxyPort>port</https.proxyPort>
<https.noProxyHosts>localhost|10.150.4.49</https.noProxyHosts>
                    -->
                    <file.encoding>${project.build.sourceEncoding}</file.encoding>
                  </systemPropertyVariables>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>distribution</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <executions>
              <execution>
                <id>generate-distribution-files</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
                <configuration>
                  <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.apache.jclouds</groupId>
                <artifactId>jclouds-assemblies</artifactId>
                <version>${project.version}</version>
              </dependency>
            </dependencies>
          </plugin>
        </plugins>
      </build>
    </profile>        
    <profile>
      <id>site</id>
      <build>
        <plugins>
          <!-- disable the Maven enforcer plugin and prevent forking (unlike -Denforcer.skip) -->
          <plugin>
            <artifactId>maven-enforcer-plugin</artifactId>
            <executions>
              <execution>
                <id>enforce-banned-dependencies</id>
                <phase>none</phase>
              </execution>
              <execution>
                <id>enforce-java</id>
                <goals>
                  <goal>enforce</goal>
                </goals>
                <phase>none</phase>
              </execution>
              <!-- inherited from oss-parent -->
              <execution>
                <id>enforce-maven</id>
                <goals>
                  <goal>enforce</goal>
                </goals>
                <phase>none</phase>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>jclouds-project</id>
      <activation>
        <file>
          <!-- only in the jclouds-project module -->
          <exists>src/etc/header.txt</exists>
        </file>
      </activation>

      <!-- Maven generates incorrect links without the <site> declaration here -->
      <distributionManagement>
        <site>
          <id>jclouds-github-pages-site</id>
          <url>${maven.site.url.base}/${project.version}/${project.artifactId}</url>
        </site>
      </distributionManagement>
      <build>
        <plugins>
          <plugin>
            <!-- When building jclouds-project, override the config to use the local file -->
            <artifactId>maven-checkstyle-plugin</artifactId>
            <configuration>
              <configLocation>../resources/checkstyle.xml</configLocation>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>not-jclouds-project</id>
      <activation>
        <file>
          <!-- only in the jclouds-project module -->
          <missing>src/etc/header.txt</missing>
        </file>
      </activation>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-checkstyle-plugin</artifactId>
            <dependencies>
              <dependency>
                <groupId>org.apache.jclouds</groupId>
                <artifactId>jclouds-resources</artifactId>
                <version>${project.version}</version>
              </dependency>
            </dependencies>
            <configuration>
              <!-- jclouds-resources has the checkstyle config in the classpath -->
              <configLocation>resources/checkstyle.xml</configLocation>
            </configuration>
          </plugin>
        </plugins>            
      </build>
    </profile>
    <profile>
      <id>doc</id>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.9</version>
            <executions>
              <execution>
                <id>javadoc</id>
                <phase>package</phase>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>src</id>
      <build>
        <plugins>
          <!-- make sure we generate src jars too -->
          <plugin>
            <artifactId>maven-source-plugin</artifactId>
            <version>2.2</version>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar-no-fork</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>