<?xml version="1.0" encoding="UTF-8"?>
<!--
  #%L
  Fuse EAP
  %%
  Copyright (C) 2015 RedHat
  %%
  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.
  #L%
  -->


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

    <name>Fuse EAP</name>

    <groupId>com.redhat.fuse.eap</groupId>
    <artifactId>fuse-eap</artifactId>
    <packaging>pom</packaging>

	<!--
		This version follows the Fuse version
	
		Fuse-7.4.x => 7.4.x
		Fuse-7.5.x => 7.5.x
		Fuse-8.0.x => 8.0.x
		...
	-->
    <version>7.6.0.fuse-760021</version>

    <description>Fuse EAP</description>
    <url>https://github.com/jboss-fuse/fuse-eap</url>

    <!-- Source Control -->
    <scm>
        <connection>scm:git:git@github.com:jboss-fuse/fuse-eap.git</connection>
        <developerConnection>scm:git:git@github.com:jboss-fuse/fuse-eap.git</developerConnection>
        <url>https://github.com/jboss-fuse/fuse-eap</url>
        <tag>HEAD</tag>
    </scm>

    <!-- Properties -->
    <properties>
        
        <!--
        	Latest EAP version

            http://download-node-02.eng.bos.redhat.com/released/JBoss-middleware/eap7/
        	http://download.eng.bos.redhat.com/brewroot/repos/jb-eap-7.2-maven-build/latest/maven/org/jboss/eap/jboss-eap-parent

        	> keytool -printcert -rfc -sslserver download.eng.bos.redhat.com:443 > download.eng.bos.redhat.pem
        	> keytool -importcert -file download.eng.bos.redhat.pem -storepass changeit -keystore $JAVA_HOME/jre/lib/security/cacerts
        -->
        <version.wildfly>7.2.5.GA-redhat-00002</version.wildfly>
        <version.wildfly.arquillian>2.1.1.Final</version.wildfly.arquillian>
        <version.wildfly.camel>5.4.0.fuse-760021</version.wildfly.camel>
        <version.wildfly.camel.examples>5.4.0.fuse-760021</version.wildfly.camel.examples>
        <version.fuse.patch>3.2.0.fuse-760020</version.fuse.patch>

        <!-- Other versions -->
        <version.jboss.arquillian.core>1.1.13.Final</version.jboss.arquillian.core>
        <version.junit>4.11</version.junit>
        <version.slf4j>1.6.6</version.slf4j>

        <!-- Plugin versions -->
        <version-exec-maven-plugin>1.3.2</version-exec-maven-plugin>
        <version-groovy-maven-plugin>2.0</version-groovy-maven-plugin>
        <version-license-maven-plugin>1.8</version-license-maven-plugin>
        <version-maven-antrun-plugin>1.6</version-maven-antrun-plugin>
        <version-maven-assembly-plugin>2.5.3</version-maven-assembly-plugin>
        <version-maven-compiler-plugin>3.1</version-maven-compiler-plugin>
        <version-maven-dependency-plugin>2.10</version-maven-dependency-plugin>
        <version-maven-deploy-plugin>2.8.2</version-maven-deploy-plugin>
        <version-maven-jar-plugin>2.6</version-maven-jar-plugin>
        <version-maven-resources-plugin>2.7</version-maven-resources-plugin>
        <version-maven-release-plugin>2.5</version-maven-release-plugin>
        <version-maven-surefire-plugin>2.19</version-maven-surefire-plugin>
        <version.source.plugin>2.2.1</version.source.plugin>
    </properties>

    <!-- Modules -->
    <modules>
        <module>distro</module>
        <module>installer</module>
        <module>itests</module>
    </modules>

    <!-- DependencyManagement -->
    <dependencyManagement>
        <dependencies>

            <!-- Arquillian -->
            <dependency>
                <groupId>org.jboss.arquillian</groupId>
                <artifactId>arquillian-bom</artifactId>
                <scope>import</scope>
                <type>pom</type>
                <version>${version.jboss.arquillian.core}</version>
            </dependency>

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

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

            <!-- WildFly Arquilllian -->
            <dependency>
                <groupId>org.wildfly.arquillian</groupId>
                <artifactId>wildfly-arquillian-container-managed</artifactId>
                <version>${version.wildfly.arquillian}</version>
            </dependency>

            <!-- WildFly Camel -->
            <dependency>
                <groupId>org.wildfly.camel</groupId>
                <artifactId>wildfly-camel-testenricher</artifactId>
                <version>${version.wildfly.camel}</version>
            </dependency>
            <dependency>
                <groupId>org.wildfly.camel.example</groupId>
                <artifactId>example-camel-itests</artifactId>
                <version>${version.wildfly.camel.examples}</version>
            </dependency>

            <!-- Fuse Patch -->
            <dependency>
                <groupId>org.wildfly.extras.patch</groupId>
                <artifactId>fuse-patch-core</artifactId>
                <version>${version.fuse.patch}</version>
            </dependency>

        </dependencies>
    </dependencyManagement>

    <!-- Build -->
    <build>
        <!-- Plugin Management -->
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <version>${version-maven-antrun-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>${version-maven-assembly-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>${version-maven-compiler-plugin}</version>
                    <configuration>
                        <source>1.7</source>
                        <target>1.7</target>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>${version-maven-dependency-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-deploy-plugin</artifactId>
                    <version>${version-maven-deploy-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>${version-maven-jar-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <version>${version-maven-resources-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-release-plugin</artifactId>
                    <version>${version-maven-release-plugin}</version>
                    <configuration>
                        <autoVersionSubmodules>true</autoVersionSubmodules>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <version>${version-maven-surefire-plugin}</version>
                    <configuration>
                        <failIfNoTests>false</failIfNoTests>
                    </configuration>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>exec-maven-plugin</artifactId>
                    <version>${version-exec-maven-plugin}</version>
                </plugin>
                <plugin>
                    <groupId>org.codehaus.mojo</groupId>
                    <artifactId>license-maven-plugin</artifactId>
                    <version>${version-license-maven-plugin}</version>
                </plugin>
            </plugins>
        </pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.codehaus.gmaven</groupId>
                <artifactId>groovy-maven-plugin</artifactId>
                <version>${version-groovy-maven-plugin}</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>${version.source.plugin}</version>
                <configuration>
                    <archive>
                        <index>true</index>
                        <manifest>
                            <addDefaultSpecificationEntries>
                                true
                            </addDefaultSpecificationEntries>
                            <addDefaultImplementationEntries>
                                true
                            </addDefaultImplementationEntries>
                        </manifest>
                        <manifestEntries>
                            <Implementation-URL>${project.url}</Implementation-URL>
                            <Java-Version>${java.version}</Java-Version>
                            <Java-Vendor>${java.vendor}</Java-Vendor>
                            <Os-Name>${os.name}</Os-Name>
                            <Os-Arch>${os.arch}</Os-Arch>
                            <Os-Version>${os.version}</Os-Version>
                            <Scm-Url>${project.scm.url}</Scm-Url>
                            <Scm-Connection>${project.scm.connection}</Scm-Connection>
                            <Scm-Revision>${buildNumber}</Scm-Revision>
                            <Build-Timestamp>${build.datetime}</Build-Timestamp>
                        </manifestEntries>
                    </archive>
                </configuration>
                <executions>
                    <execution>
                        <id>attach-sources</id>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
                <dependencies>
                    <dependency>
                        <groupId>org.codehaus.plexus</groupId>
                        <artifactId>plexus-io</artifactId>
                        <version>2.0.10</version>
                    </dependency>
                </dependencies>
            </plugin>
            <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>license-maven-plugin</artifactId>
                <configuration>
                    <addJavaLicenseAfterPackage>false</addJavaLicenseAfterPackage>
                    <canUpdateCopyright>true</canUpdateCopyright>
                    <canUpdateDescription>true</canUpdateDescription>
                    <organizationName>RedHat</organizationName>
                    <licenseName>apache_v2</licenseName>
                    <inceptionYear>2015</inceptionYear>
                    <roots>
                        <root>etc</root>
                        <root>src</root>
                        <root>scripts</root>
                    </roots>
                    <excludes>
                        <exclude>**/eap/config/*-subsystem.xml</exclude>
                        <exclude>**/eap/config/*-security-domain.xml</exclude>
                    </excludes>
                    <!--
                    <roots>
                        <root>${basedir}</root>
                    </roots>
                    <includes>
                        <include>pom.xml</include>
                    </includes>
                    -->
                </configuration>
            </plugin>
        </plugins>
    </build>

    <!-- Licenses -->
    <licenses>
        <license>
            <name>apache_v2</name>
            <url>http://repository.jboss.org/licenses/apache-2.0.txt</url>
        </license>
    </licenses>

    <!-- Developers -->
    <developers>
        <developer>
            <name>Fuse EAP Committers</name>
        </developer>
    </developers>

    <!-- Distribution Management -->
    <distributionManagement>
        <repository>
            <id>jboss-releases-repository</id>
            <name>JBoss Releases Repository</name>
            <url>https://repository.jboss.org/nexus/service/local/staging/deploy/maven2</url>
        </repository>
        <snapshotRepository>
            <id>jboss-snapshots-repository</id>
            <name>JBoss Snapshots Repository</name>
            <url>https://repository.jboss.org/nexus/content/repositories/snapshots</url>
        </snapshotRepository>
    </distributionManagement>

    <!-- Issue Management -->
    <issueManagement>
        <system>Jira</system>
        <url>https://issues.jboss.org/browse/ENTESB</url>
    </issueManagement>

    <!-- Repositories -->
    <repositories>
        <repository>
            <id>jboss-public</id>
            <url>https://repository.jboss.org/nexus/content/groups/public</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>jboss-ea</id>
            <url>https://repository.jboss.org/nexus/content/groups/ea</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
        <repository>
            <id>eap72-brew</id>
            <url>http://download.eng.bos.redhat.com/brewroot/repos/jb-eap-7.2-maven-build/latest/maven</url>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </repository>
    </repositories>

	<profiles>
		<profile>
			<id>fuse-mirror</id>
			<activation>
				<property>
					<name>fuseMirror</name>
				</property>
			</activation>
			<repositories>
				<repository>
					<id>fuse-mirror</id>
					<url>http://10.0.144.111:8081/repository/maven-public</url>
					<releases>
						<enabled>true</enabled>
						<checksumPolicy>fail</checksumPolicy>
					</releases>
					<snapshots>
						<enabled>false</enabled>
					</snapshots>
				</repository>
			</repositories>
			<pluginRepositories>
				<pluginRepository>
					<id>fuse-mirror</id>
					<url>http://10.0.144.111:8081/repository/maven-public</url>
					<releases>
						<enabled>true</enabled>
						<checksumPolicy>fail</checksumPolicy>
					</releases>
					<snapshots>
						<enabled>false</enabled>
					</snapshots>
				</pluginRepository>
			</pluginRepositories>
		</profile>
	</profiles>
</project>
