<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright (C) 2012, the original authors
~
~  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/xsd/maven-4.0.0.xsd">
  <parent>
    <artifactId>jclouds-cli-pom</artifactId>
    <groupId>org.apache.jclouds.cli</groupId>
    <version>1.7.0-SNAPSHOT</version>
  </parent>
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.apache.jclouds.cli</groupId>
  <artifactId>jclouds-cli</artifactId>
  <version>1.7.0-SNAPSHOT</version>
  <name>jclouds :: cli :: assembly</name>

  <dependencies>
    <dependency>
      <groupId>org.apache.jclouds.cli</groupId>
      <artifactId>branding</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.jclouds.cli</groupId>
      <artifactId>runner</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.karaf</groupId>
      <artifactId>apache-karaf</artifactId>
      <version>${karaf.version}</version>
      <type>tar.gz</type>
    </dependency>
    <dependency>
      <groupId>org.apache.karaf</groupId>
      <artifactId>apache-karaf</artifactId>
      <version>${karaf.version}</version>
      <type>zip</type>
    </dependency>

    <!-- External Logging Dependencies -->
    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>${slf4j.version}</version>
    </dependency>

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

    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>${log4j.version}</version>
    </dependency>

  </dependencies>

  <build>
    <resources>
      <resource>
        <directory>src/main/resources</directory>
        <filtering>false</filtering>
      </resource>
      <resource>
        <directory>src/main/filtered-resources</directory>
        <includes>
          <include>**/*</include>
        </includes>
        <filtering>true</filtering>
      </resource>
    </resources>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-resources-plugin</artifactId>
        <version>${maven-resources-plugin.version}</version>
        <configuration>
          <useDefaultDelimiters>false</useDefaultDelimiters>
          <delimiters>
            <delimiter>${*}</delimiter>
          </delimiters>
        </configuration>
        <executions>
          <execution>
            <id>filter</id>
            <phase>generate-resources</phase>
            <goals>
              <goal>resources</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-dependency-plugin</artifactId>
        <executions>
          <execution>
            <id>unpack-unix</id>
            <phase>generate-resources</phase>
            <goals>
              <goal>unpack</goal>
            </goals>
            <configuration>
              <artifactItems>
                <artifactItem>
                  <groupId>org.apache.karaf</groupId>
                  <artifactId>apache-karaf</artifactId>
                  <version>${karaf.version}</version>
                  <classifier>minimal</classifier>
                  <type>tar.gz</type>
                  <outputDirectory>target/dependencies/unix</outputDirectory>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
          <execution>
            <id>unpack-win</id>
            <phase>generate-resources</phase>
            <goals>
              <goal>unpack</goal>
            </goals>
            <configuration>
              <artifactItems>
                <artifactItem>
                  <groupId>org.apache.karaf</groupId>
                  <artifactId>apache-karaf</artifactId>
                  <version>${karaf.version}</version>
                  <classifier>minimal</classifier>
                  <type>zip</type>
                  <outputDirectory>target/dependencies/win</outputDirectory>
                </artifactItem>
              </artifactItems>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.karaf.tooling</groupId>
        <artifactId>features-maven-plugin</artifactId>
        <version>${karaf.version}</version>
        <executions>
          <execution>
            <id>add-features-to-repo</id>
            <phase>compile</phase>
            <goals>
              <goal>add-features-to-repo</goal>
            </goals>
            <configuration>
              <descriptors>
                <descriptor>
                  mvn:org.apache.karaf.assemblies.features/standard/${karaf.version}/xml/features
                </descriptor>
                <descriptor>
                  mvn:org.apache.jclouds.karaf/jclouds-karaf/${jclouds.karaf.version}/xml/features
                </descriptor>
              </descriptors>
              <features>
                <feature>config</feature>
                <feature>jclouds-guice</feature>
                <feature>jclouds</feature>
                <feature>jclouds-compute</feature>
                <feature>jclouds-api-filesystem</feature>
                <feature>jclouds-api-elasticstack</feature>
                <feature>jclouds-api-vcloud</feature>
                <feature>jclouds-api-byon</feature>
                <feature>jclouds-api-swift</feature>
                <feature>jclouds-api-openstack-nova</feature>
                <feature>jclouds-api-openstack-cinder</feature>
                <feature>jclouds-api-s3</feature>
                <feature>jclouds-api-ec2</feature>
                <feature>jclouds-api-cloudstack</feature>
                <feature>jclouds-api-rackspace-cloudidentity</feature>
                <feature>jclouds-api-chef</feature>
                <feature>jclouds-aws-cloudwatch</feature>
                <feature>jclouds-aws-ec2</feature>
                <feature>jclouds-aws-s3</feature>
                <feature>jclouds-azureblob</feature>
                <feature>jclouds-bluelock-vcloud-zone01</feature>
                <feature>jclouds-cloudfiles-uk</feature>
                <feature>jclouds-cloudfiles-us</feature>
                <feature>jclouds-rackspace-cloudloadbalancers-us</feature>
                <feature>jclouds-rackspace-cloudloadbalancers-uk</feature>
                <feature>jclouds-cloudonestorage</feature>
                <feature>jclouds-cloudserver-uk</feature>
                <feature>jclouds-cloudserver-us</feature>
                <feature>jclouds-rackspace-cloudservers-us</feature>
                <feature>jclouds-rackspace-cloudservers-uk</feature>
                <feature>jclouds-cloudsigma-zrh</feature>
                <feature>jclouds-cloudsigma-lvs</feature>
                <feature>jclouds-elastichosts-lon-b</feature>
                <feature>jclouds-elastichosts-lon-p</feature>
                <feature>jclouds-elastichosts-sat-p</feature>
                <feature>jclouds-elastichosts-lax-p</feature>
                <feature>jclouds-elastichosts-tor-p</feature>
                <feature>jclouds-gogrid</feature>
                <feature>jclouds-go2cloud-jhb1</feature>
                <feature>jclouds-greenhousedata-element-vcloud</feature>
                <feature>jclouds-hpcloud-objectstorage</feature>
                <feature>jclouds-hpcloud-compute</feature>
                <feature>jclouds-ninefold-storage</feature>
                <feature>jclouds-ninefold-compute</feature>
                <feature>jclouds-openhosting-east1</feature>
                <feature>jclouds-serverlove-z1-man</feature>
                <feature>jclouds-skalicloud-sdg-my</feature>
                <feature>jclouds-softlayer</feature>
                <feature>jclouds-trmk-ecloud</feature>
                <feature>jclouds-trmk-vcloudexpress</feature>
                <feature>jclouds-services</feature>
                <feature>jclouds-commands</feature>
                <feature>jclouds-chef</feature>
                <feature>jclouds-url-handler</feature>
              </features>
              <includeMvnBasedDescriptors>true</includeMvnBasedDescriptors>
              <repository>target/features-repo</repository>
            </configuration>
            <inherited>false</inherited>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-antrun-plugin</artifactId>
        <version>${maven-antrun-plugin.version}</version>
        <executions>
          <execution>
            <phase>prepare-package</phase>
            <configuration>
              <tasks>
                <replace token="#!/bin/bash" value="#!/bin/sh"
                         dir="target/dependencies/unix/apache-karaf-${karaf.version}/bin">
                  <include name="*"/>
                </replace>
                <replaceregexp file="target/dependencies/unix/apache-karaf-${karaf.version}/etc/config.properties"
                               match="karaf.framework.equinox=*"
                               replace="#"
                               byline="true"/>
                <replaceregexp file="target/dependencies/win/apache-karaf-${karaf.version}/etc/config.properties"
                               match="karaf.framework.equinox=*"
                               replace="#"
                               byline="true"/>
              </tasks>
            </configuration>
            <goals>
              <goal>run</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>${maven-assembly-plugin.version}</version>
        <executions>
          <execution>
            <id>unix-bin</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
            <configuration>
              <descriptors>
                <descriptor>src/main/assembly/unix.xml</descriptor>
              </descriptors>
              <finalName>${project.artifactId}-${project.version}</finalName>
              <tarLongFileMode>gnu</tarLongFileMode>
              <appendAssemblyId>false</appendAssemblyId>
            </configuration>
          </execution>
          <execution>
            <id>windows-bin</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
            <configuration>
              <descriptors>
                <descriptor>src/main/assembly/win.xml</descriptor>
              </descriptors>
              <finalName>${project.artifactId}-${project.version}</finalName>
              <appendAssemblyId>false</appendAssemblyId>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
