<?xml version="1.0" encoding="UTF-8"?>
<!--

  Copyright 2013 Red Hat, Inc.  All rights reserved.
  http://www.redhat.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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.fusesource</groupId>
        <artifactId>fusesource-pom</artifactId>
        <version>1.9</version>
    </parent>

    <groupId>com.fusesource.tooling</groupId>
    <artifactId>fuse-cdc</artifactId>
    <version>1.1.0</version>

    <packaging>pom</packaging>

    <name>FuseSource :: Tooling :: FuseCDC</name>
    <description>Fuse Custom Distribution Creator</description>

    <url>http://fusesource.com/forge/projects/fusecdc</url>

    <organization>
        <name>FuseSource</name>
        <url>http://fusesource.com</url>
    </organization>

    <licenses>
        <license>
            <name>Fuse Custom Distribution Creator 1.0 User License Agreement</name>
            <distribution>manual</distribution>
        </license>
    </licenses>

    <prerequisites>
        <maven>3.0.2</maven>
    </prerequisites>

    <modules>
        <module>fuse-cdc-api</module>
        <module>fuse-cdc-cli</module>
        <module>fuse-cdc-maven-plugin</module>
        <module>fuse-cdc-assembly</module>
    </modules>

    <properties>

        <!-- ======================================================= -->
        <!-- MAVEN PLUGIN SETTINGS                                   -->
        <!-- ======================================================= -->
        <!-- Source Encoding Properties                              -->
        <!-- Sets the default file encoding for all filtered and     -->
        <!-- generated files.                                        -->
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <!-- Source Encoding Properties -->

        <!-- Compiler Properties -->
        <maven.compiler.source>1.6</maven.compiler.source>
        <maven.compiler.target>1.6</maven.compiler.target>
        <maven.compiler.fork>true</maven.compiler.fork>
        <maven.compiler.maxmem>256m</maven.compiler.maxmem>
        <maven.compiler.verbose>true</maven.compiler.verbose>
        <!-- Compiler Properties -->
        
        <!-- Surefire/Failsafe Tests -->
        <maven.test.redirectTestOutputToFile>true</maven.test.redirectTestOutputToFile>
        <!-- Surefire Tests -->
        
        
        <!-- Dependency Versions -->
        <commons.cli.version>1.2</commons.cli.version>
        <commons.compress.version>1.4.1</commons.compress.version>
        <junit.version>4.10</junit.version>
        <karaf.version>2.2.5.fuse-7-061</karaf.version>
        <maven.version>3.0.2</maven.version>
        <maven.aether.version>1.9</maven.aether.version>
        <!-- 
            Maven Wagon Version 2.2 has issues with Maven 3.0.3:
           java.lang.NoSuchMethodError: org.apache.maven.wagon.shared.http4.AbstractHttpClientWagon.getReadTimeout()I
        -->
        <maven.wagon.version>2.1</maven.wagon.version>
        <plexus.utils.version>2.0.7</plexus.utils.version>
        <sisu.inject.plexus.version>2.2.3</sisu.inject.plexus.version>
        <slf4j.version>1.6.4</slf4j.version>
        <log4j.version>1.2.16</log4j.version>
        <!-- Dependency Versions -->
        
        <!-- Project properties -->
        <cdc.distribution.version>6.1.0.redhat-033</cdc.distribution.version>
        <cdc.test.distribution.version>2.3.2</cdc.test.distribution.version>
        <cdc.test.username />
        <cdc.test.password />
        <!-- Project properties -->
    </properties>

    <distributionManagement>
        <repository>
            <id>fusesource-nexus-staging</id>
            <name>Fusesource Release Repository</name>
            <url>http://repo.fusesource.com/nexus/service/local/staging/deploy/maven2</url>
        </repository>
        <snapshotRepository>
            <id>fusesource-nexus-snapshots</id>
            <name>Fusesource Nexus Snapshots</name>
            <url>http://repo.fusesource.com/nexus/content/repositories/snapshots</url>
        </snapshotRepository>
    </distributionManagement>

    <repositories>
        <repository>
            <id>fusesource-releases</id>
            <name>FuseSource Release Repository</name>
            <url>http://repo.fusesource.com/nexus/content/groups/public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>fusesource-public-snapshots</id>
            <name>FuseSource Public Snapshot Repository</name>
            <url>http://repo.fusesource.com/nexus/content/groups/public-snapshots</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>fusesource-ea</id>
            <name>FuseSource Proxy Repository</name>
            <url>http://repo.fusesource.com/nexus/content/groups/ea</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>fusesource-releases</id>
            <name>FuseSource Release Repository</name>
            <url>http://repo.fusesource.com/nexus/content/groups/public</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>fusesource-public-snapshots</id>
            <name>FuseSource Public Snapshot Repository</name>
            <url>http://repo.fusesource.com/nexus/content/groups/public-snapshots</url>
            <releases>
                <enabled>false</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
        <pluginRepository>
            <id>fusesource-proxy</id>
            <name>FuseSource Proxy Repository</name>
            <url>http://repo.fusesource.com/nexus/content/groups/ea</url>
        </pluginRepository>
    </pluginRepositories>

    <dependencyManagement>
        <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>
            <dependency>
                <groupId>junit</groupId>
                <artifactId>junit</artifactId>
                <version>${junit.version}</version>
                <scope>test</scope>
            </dependency>
        </dependencies>
    </dependencyManagement>

    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>2.12</version>
                    <configuration>
                        <systemPropertyVariables>
                            <!-- Wagon HTTP timeout configuration time in ms (default 1800000). -->
                            <!-- We change that to 10 sec (10000) -->
                            <maven.wagon.rto>10000</maven.wagon.rto>
                            <test.repo.username>${cdc.test.username}</test.repo.username>
                            <test.repo.password>${cdc.test.password}</test.repo.password>
                            <test.project.version>${project.version}</test.project.version>
                            <test.distribution.version>${cdc.test.distribution.version}</test.distribution.version>
                        </systemPropertyVariables>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-failsafe-plugin</artifactId>
                    <version>2.12</version>
                    <executions>
                        <execution>
                            <id>integration-test</id>
                            <goals>
                                <goal>integration-test</goal>
                            </goals>
                        </execution>
                        <execution>
                            <id>verify</id>
                            <goals>
                                <goal>verify</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <systemPropertyVariables>
                            <!-- Wagon HTTP timeout configuration time in ms (default 1800000). -->
                            <!-- We change that to 10 sec (10000) -->
                            <maven.wagon.rto>10000</maven.wagon.rto>
                            <test.repo.username>${cdc.test.username}</test.repo.username>
                            <test.repo.password>${cdc.test.password}</test.repo.password>
                            <test.project.version>${project.version}</test.project.version>
                            <test.distribution.version>${cdc.test.distribution.version}</test.distribution.version>
                        </systemPropertyVariables>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>2.3.2</version>
                    <configuration>
                        <source>1.6</source>
                        <target>1.6</target>
                        <encoding>${project.build.sourceEncoding}</encoding>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>2.2.1</version>
                    <configuration>
                        <pushChanges>false</pushChanges>
                        <localCheckout>true</localCheckout>
                        <autoVersionSubmodules>true</autoVersionSubmodules>
                        <allowTimestampedSnapshots>false</allowTimestampedSnapshots>
                        <preparationGoals>clean install</preparationGoals>
                        <goals>deploy</goals>
                        <arguments>-Prelease -Dtest=false -DskipInvocation=true -DskipTests=true -DfailIfNoTests=false</arguments>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>
</project>
