<?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/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <parent>
    <groupId>org.apache</groupId>
    <artifactId>apache</artifactId>
    <version>13</version>
  </parent>

  <groupId>org.apache.jclouds</groupId>
  <artifactId>jclouds-karaf</artifactId>
  <packaging>pom</packaging>
  <version>1.7.1</version>
  <name>Apache jclouds :: Karaf</name>

  <description>jclouds Karaf Integration Project</description>
  <url>http://jclouds.apache.org</url>
  <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>

  <scm>
    <connection>scm:git:https://git-wip-us.apache.org/repos/asf/jclouds-karaf.git</connection>
    <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/jclouds-karaf.git</developerConnection>
    <url>https://git-wip-us.apache.org/repos/asf?p=jclouds-karaf.git</url>
    <tag>jclouds-karaf-1.7.1-rc1</tag>
  </scm>

  <developers>
    <developer>
      <id>iocanel</id>
      <name>Ioannis Canellos</name>
      <email>iocanel@gmail.com</email>
      <url>http://iocanel.blogspot.com</url>
    </developer>
  </developers>

  <build>
    <plugins>
      <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>

            <!-- 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>.git/**</exclude>
            <exclude>**/.gitignore</exclude>
            <exclude>**/*.json</exclude>
            <exclude>**/*.log*</exclude>
            <exclude>**/TODO</exclude>
            <exclude>.mailmap</exclude>
            <exclude>.idea/**</exclude>
            <exclude>**/*.iml</exclude>
            <exclude>**/.project</exclude>
            <exclude>**/.classpath</exclude>
            <exclude>**/.settings/**</exclude>
            <exclude>**/.checkstyle</exclude>
            <exclude>**/target/**</exclude>
            <exclude>.repository/**</exclude>

            <!-- Excluded because these text files are spat out directly as help -->
            <exclude>**/src/main/resources/**/*.txt</exclude>
            <!-- binary -->
          </excludes>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>${maven-bundle-plugin.version}</version>
        <extensions>true</extensions>
        <inherited>true</inherited>
        <configuration>
          <instructions>
            <Bundle-Name>${project.name}</Bundle-Name>
            <Bundle-SymbolicName>${project.groupId}.${project.artifactId}</Bundle-SymbolicName>
            <Export-Package>${osgi.export}</Export-Package>
            <Import-Package>${osgi.import}</Import-Package>
            <DynamicImport-Package>${osgi.dynamic.import}</DynamicImport-Package>
            <Private-Package>${osgi.private}</Private-Package>
            <Require-Bundle>${osgi.bundles}</Require-Bundle>
            <Bundle-Activator>${osgi.activator}</Bundle-Activator>
            <Export-Service>${osgi.export.service}</Export-Service>
          </instructions>
          <supportedProjectTypes>
            <supportedProjectType>jar</supportedProjectType>
            <supportedProjectType>war</supportedProjectType>
            <supportedProjectType>bundle</supportedProjectType>
          </supportedProjectTypes>
          <unpackBundle>true</unpackBundle>
        </configuration>
        <executions>
          <execution>
            <id>bundle-manifest</id>
            <phase>process-classes</phase>
            <goals>
              <goal>manifest</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>${maven-compiler-plugin.version}</version>
        <configuration>
          <source>1.6</source>
          <target>1.6</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-release-plugin</artifactId>
        <version>${maven-release-plugin.version}</version>
        <configuration>
          <useReleaseProfile>false</useReleaseProfile>
          <preparationGoals>clean install</preparationGoals>
          <goals>deploy</goals>
          <arguments>-Pdoc -Papache-release ${arguments}</arguments>
        </configuration>
      </plugin>
    </plugins>
  </build>

  <modules>
    <module>core</module>
    <module>utils</module>
    <module>cache</module>
    <module>commands</module>
    <module>services</module>
    <module>urlhandler</module>
    <module>chef</module>
    <module>feature</module>
    <module>itests</module>
    <module>recipe</module>
  </modules>

  <properties>
    <aopalliance.bundle.version>1.0_5</aopalliance.bundle.version>
    <bcprov.version>1.49</bcprov.version>
    <configadmin.version>1.2.8</configadmin.version>
    <easymock.version>3.0</easymock.version>
    <felix.configadmin.version>1.2.8</felix.configadmin.version>
    <groovy.version>1.8.6</groovy.version>
    <gson.version>2.2.2</gson.version>
    <guava.version>15.0</guava.version>
    <guava.test.version>10.0</guava.test.version>
    <guice.version>3.0</guice.version>
    <httpclient.version>4.1.1</httpclient.version>
    <httpcore.version>4.1</httpcore.version>
    <java-xmlbuilder.bundle.version>0.3_1</java-xmlbuilder.bundle.version>
    <javax.inject.bundle.version>1_1</javax.inject.bundle.version>
    <jclouds.version>1.7.1</jclouds.version>
    <jclouds.chef.version>${project.version}</jclouds.chef.version>
    <jersey.version>1.11</jersey.version>
    <jersey.bundle.version>1.11_1</jersey.bundle.version>
    <joda.version>2.1</joda.version>
    <jsch.bundle.version>0.1.44_2</jsch.bundle.version>
    <jsr305.bundle.version>1.3.9_1</jsr305.bundle.version>
    <sericemix.specs.jsr250.version>1.9.0</sericemix.specs.jsr250.version>
    <junit.version>4.8.2</junit.version>
    <jzlib.bundle.version>1.0.7_1</jzlib.bundle.version>
    <jzlib.version>1.0.7</jzlib.version>
    <karaf.version>2.2.7</karaf.version>
    <net.oauth.bundle.version>20100527_1</net.oauth.bundle.version>
    <netty.bundle.version>3.3.1.Final</netty.bundle.version>
    <osgi.version>4.2.0</osgi.version>
    <pax-exam-karaf.version>0.4.1</pax-exam-karaf.version>
    <pax-exam.version>2.3.1</pax-exam.version>
    <pax-url-mvn.version>1.3.5</pax-url-mvn.version>
    <pax-url-aether.version>1.4.0.RC1</pax-url-aether.version>
    <rocoto.version>6.2</rocoto.version>
    <scripting.api.bundle.version>2.0.0</scripting.api.bundle.version>
    <slf4j.version>1.5.8</slf4j.version>
    <snakeyaml.version>1.11</snakeyaml.version>
    <sshj.version>0.8.1</sshj.version>

    <!-- Plugin Versions -->
    <depends-maven-plugin.version>1.2</depends-maven-plugin.version>
    <maven-bundle-plugin.version>2.1.0</maven-bundle-plugin.version>
    <maven-compiler-plugin.version>2.0.2</maven-compiler-plugin.version>
    <maven-dependency-plugin.version>2.3</maven-dependency-plugin.version>
    <maven-war-plugin.version>2.1.1</maven-war-plugin.version>
    <maven-release-plugin.version>2.4</maven-release-plugin.version>
    <maven-remote-resources-plugin.version>1.2.1</maven-remote-resources-plugin.version>
    <maven-resources-plugin.version>2.4.3</maven-resources-plugin.version>
    <maven-surefire-plugin.version>2.10</maven-surefire-plugin.version>
    <build-helper-maven-plugin.version>1.5</build-helper-maven-plugin.version>

    <sourceReleaseAssemblyDescriptor>source-release-zip-tar</sourceReleaseAssemblyDescriptor>
  </properties>

  <dependencyManagement>
    <dependencies>
      <!-- Internal dependencies -->
      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>core</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>utils</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>recipe</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>cache</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>services</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>commands</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf.chef</groupId>
        <artifactId>core</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf.chef</groupId>
        <artifactId>services</artifactId>
        <version>${project.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.karaf.chef</groupId>
        <artifactId>commands</artifactId>
        <version>${project.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.jclouds.karaf</groupId>
        <artifactId>jclouds-karaf</artifactId>
        <version>${project.version}</version>
        <type>xml</type>
        <classifier>features</classifier>
      </dependency>


      <!-- OSGi dependencies -->
      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>org.osgi.core</artifactId>
        <version>${osgi.version}</version>
      </dependency>
      <dependency>
        <groupId>org.osgi</groupId>
        <artifactId>org.osgi.compendium</artifactId>
        <version>${osgi.version}</version>
      </dependency>

      <!-- Configuration Admin -->
      <dependency>
        <groupId>org.apache.felix</groupId>
        <artifactId>org.apache.felix.configadmin</artifactId>
        <version>${configadmin.version}</version>
      </dependency>

      <!-- Pax Url -->
      <dependency>
        <groupId>org.ops4j.pax.url</groupId>
        <artifactId>pax-url-mvn</artifactId>
        <version>${pax-url-mvn.version}</version>
      </dependency>

      <dependency>
        <groupId>org.ops4j.pax.url</groupId>
        <artifactId>pax-url-aether</artifactId>
        <version>${pax-url-aether.version}</version>
      </dependency>

      <!-- Pax Exam Karaf -->
      <dependency>
        <groupId>org.openengsb.labs.paxexam.karaf</groupId>
        <artifactId>paxexam-karaf-container</artifactId>
        <version>${pax-exam-karaf.version}</version>
        <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>org.ops4j.pax.exam</groupId>
        <artifactId>pax-exam-junit4</artifactId>
        <version>${pax-exam.version}</version>
        <scope>test</scope>
      </dependency>

      <!-- Guice Dependencies -->
      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.aopalliance</artifactId>
        <version>${aopalliance.bundle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.netty</artifactId>
        <version>${netty.bundle.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.jsch</artifactId>
        <version>${jsch.bundle.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.javax.inject</artifactId>
        <version>${javax.inject.bundle.version}</version>
      </dependency>

      <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk15on</artifactId>
        <version>${bcprov.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.oauth-commons</artifactId>
        <version>${net.oauth.bundle.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.java-xmlbuilder</artifactId>
        <version>${java-xmlbuilder.bundle.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.servicemix.bundles</groupId>
        <artifactId>org.apache.servicemix.bundles.jzlib</artifactId>
        <version>${jzlib.bundle.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.servicemix.specs</groupId>
        <artifactId>org.apache.servicemix.specs.scripting-api-1.0</artifactId>
        <version>${scripting.api.bundle.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.servicemix.specs</groupId>
        <artifactId>org.apache.servicemix.specs.jsr250-1.0</artifactId>
        <version>${sericemix.specs.jsr250.version}</version>
      </dependency>

      <dependency>
        <groupId>com.google.inject</groupId>
        <artifactId>guice</artifactId>
        <version>${guice.version}</version>
      </dependency>

      <dependency>
        <groupId>com.google.inject.extensions</groupId>
        <artifactId>guice-assistedinject</artifactId>
        <version>${guice.version}</version>
      </dependency>

      <!-- Gson -->
      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>${gson.version}</version>
      </dependency>

      <dependency>
        <groupId>com.sun.jersey</groupId>
        <artifactId>jersey-core</artifactId>
        <version>${jersey.version}</version>
      </dependency>
      <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>${joda.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpcore-osgi</artifactId>
        <version>${httpcore.version}</version>
        <scope>compile</scope>
      </dependency>

      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient-osgi</artifactId>
        <version>${httpclient.version}</version>
      </dependency>

      <!-- Groovy -->
      <dependency>
        <groupId>org.codehaus.groovy</groupId>
        <artifactId>groovy-all</artifactId>
        <version>${groovy.version}</version>
      </dependency>

      <!-- Guava -->
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>${guava.version}</version>
      </dependency>

      <!-- SSHJ -->
      <dependency>
        <groupId>net.schmizz</groupId>
        <artifactId>sshj</artifactId>
        <version>${sshj.version}</version>
      </dependency>
      <dependency>
        <groupId>com.jcraft</groupId>
        <artifactId>jzlib</artifactId>
        <version>${jzlib.version}</version>
      </dependency>
      <!-- Logging Dependencies -->
      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>${slf4j.version}</version>
      </dependency>

      <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>${slf4j.version}</version>
      </dependency>

      <!-- Testing Dependencies -->
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
      </dependency>

      <dependency>
        <groupId>org.easymock</groupId>
        <artifactId>easymock</artifactId>
        <version>${easymock.version}</version>
      </dependency>

      <!-- jclouds Dependencies -->
      <dependency>
        <groupId>org.apache.jclouds</groupId>
        <artifactId>jclouds-core</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds</groupId>
        <artifactId>jclouds-blobstore</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds</groupId>
        <artifactId>jclouds-compute</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds</groupId>
        <artifactId>jclouds-scriptbuilder</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.api</groupId>
        <artifactId>ec2</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.driver</groupId>
        <artifactId>jclouds-log4j</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.driver</groupId>
        <artifactId>jclouds-slf4j</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.driver</groupId>
        <artifactId>jclouds-jsch</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.driver</groupId>
        <artifactId>jclouds-sshj</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.labs</groupId>
        <artifactId>nodepool</artifactId>
        <version>${jclouds.version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.jclouds.api</groupId>
        <artifactId>chef</artifactId>
        <version>1.7.1</version>
      </dependency>

      <!-- Karaf Dependencies -->
      <dependency>
        <groupId>org.apache.karaf.shell</groupId>
        <artifactId>org.apache.karaf.shell.console</artifactId>
        <version>${karaf.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.karaf</groupId>
        <artifactId>apache-karaf</artifactId>
        <version>${karaf.version}</version>
        <type>tar.gz</type>
      </dependency>

    </dependencies>
  </dependencyManagement>


  <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>
    <repository>
      <id>sonatype</id>
      <url>https://oss.sonatype.org/content/repositories/releases/</url>
    </repository>
    <repository>
      <id>maven2-repository.dev.java.net</id>
      <name>Java.net Repository for Maven</name>
      <url>http://download.java.net/maven/2/</url>
      <layout>default</layout>
    </repository>
  </repositories>

  <profiles>
    <!-- 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>
  </profiles>

</project>
