<?xml version="1.0" encoding="UTF-8"?>
<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.jboss</groupId>
        <artifactId>jboss-parent</artifactId>
        <version>19</version>
    </parent>

    <groupId>org.jboss.set</groupId>
    <artifactId>aphrodite</artifactId>
    <version>0.1.1</version>
    <packaging>jar</packaging>
    <name>Aphrodite</name>
    <description>An api for retrieving and updating SET issues from multiple issue trackers
    </description>

    <scm>
        <connection>scm:git:git://github.com/jboss-set/aphrodite.git</connection>
        <developerConnection>scm:git:git@github.com:jboss-set/aphrodite.git</developerConnection>
        <url>https://github.com/jboss-set/aphrodite</url>
      <tag>aphrodite-0.1.1.Final</tag>
  </scm>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <jdk.min.version>1.8</jdk.min.version>

        <!-- Dependency versions, please keep alphabetically -->
        <com.google.guava.version>18.0</com.google.guava.version>
        <commons.logging.version>1.1.1</commons.logging.version>
        <commons.beanutils.version>1.9.2</commons.beanutils.version>
        <egit.github.core.version>2.1.5</egit.github.core.version>
        <javax.json.version>1.0.4</javax.json.version>
        <jira.client.version>0.5</jira.client.version>
        <org.eclipse.egit.github.core.version>2.1.2</org.eclipse.egit.github.core.version>
        <org.wildfly.checkstyle-config.version>1.0.4.Final</org.wildfly.checkstyle-config.version>
        <xmlrpc.client.version>3.1.3</xmlrpc.client.version>
    </properties>


    <licenses>
        <license>
            <name>GNU General Lesser Public License (LGPL) version 3.0</name>
            <url>http://www.gnu.org/licenses/lgpl-3.0.html</url>
            <distribution>repo</distribution>
            <comments>Source's header state LGPL but no version, hence v3 is assumed here.
            </comments>
        </license>
    </licenses>

    <developers>
        <developer>
            <id>egongzle</id>
            <name>Enrique González Martínez</name>
            <organization>Red Hat</organization>
            <email>egonzale@redhat.com</email>
            <timezone>Spain</timezone>
        </developer>
        <developer>
            <id>remerson</id>
            <name>Ryan Emerson</name>
            <organization>Red Hat</organization>
            <email>remerson@redhat.com</email>
            <timezone>United Kingdom</timezone>
        </developer>
        <developer>
            <id>rpelisse</id>
            <name>Romain Pelisse</name>
            <organization>Red Hat</organization>
            <email>belaran@redhat.com</email>
            <timezone>Germany/Berlin</timezone>
        </developer>
    </developers>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-checkstyle-plugin</artifactId>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <createDependencyReducedPom>false</createDependencyReducedPom>
                            <minimizeJar>true</minimizeJar>
                            <transformers>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>org.jboss.set.aphrodite.Aphrodite</mainClass>
                                </transformer>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.IncludeResourceTransformer">
                                    <resource>META-INF/services</resource>
                                    <file>src/main/resources/META-INF/services/org.jboss.set.aphrodite.spi.IssueTrackerService</file>
                                    <file>src/main/resources/META-INF/services/org.jboss.set.aphrodite.spi.RepositoryService</file>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-checkstyle-plugin</artifactId>
                    <configuration>
                        <configLocation>wildfly-checkstyle/checkstyle.xml</configLocation>
                        <consoleOutput>true</consoleOutput>
                        <failsOnError>true</failsOnError>
                        <useFile />
                        <linkXRef>false</linkXRef>
                    </configuration>
                    <dependencies>
                        <dependency>
                            <groupId>com.puppycrawl.tools</groupId>
                            <artifactId>checkstyle</artifactId>
                            <version>${version.checkstyle}</version>
                            <exclusions>
                                <exclusion>
                                    <groupId>com.sun</groupId>
                                    <artifactId>tools</artifactId>
                                </exclusion>
                            </exclusions>
                        </dependency>
                        <dependency>
                            <groupId>org.wildfly.checkstyle</groupId>
                            <artifactId>wildfly-checkstyle-config</artifactId>
                            <version>${org.wildfly.checkstyle-config.version}</version>
                        </dependency>
                    </dependencies>
                    <executions>
                        <execution>
                            <id>check-style</id>
                            <phase>compile</phase>
                            <goals>
                                <goal>checkstyle</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-surefire-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>default-test</id>
                            <!-- to override default configuration - in fact: unit tests -->
                            <configuration>
                                <excludedGroups>connection</excludedGroups>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

    <dependencies>
        <dependency>
            <groupId>org.glassfish</groupId>
            <artifactId>javax.json</artifactId>
            <version>${javax.json.version}</version>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>${com.google.guava.version}</version>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>${commons.logging.version}</version>
        </dependency>
        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>${commons.beanutils.version}</version>
        </dependency>
        <dependency>
            <groupId>org.eclipse.mylyn.github</groupId>
            <artifactId>org.eclipse.egit.github.core</artifactId>
            <version>${org.eclipse.egit.github.core.version}</version>
        </dependency>
        <dependency>
            <groupId>org.apache.xmlrpc</groupId>
            <artifactId>xmlrpc-client</artifactId>
            <version>${xmlrpc.client.version}</version>
        </dependency>
        <dependency>
            <groupId>net.rcarz</groupId>
            <artifactId>jira-client</artifactId>
            <version>${jira.client.version}</version>
            <scope>compile</scope>
            <!-- Exclusions necessary to prevent conflicting classes warning -->
            <exclusions>
                <exclusion>
                    <groupId>org.mockito</groupId>
                    <artifactId>mockito-all</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>commons-beanutils</groupId>
                    <artifactId>commons-beanutils</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <repositories>
        <repository>
            <id>repository.engineering.redhat.com</id>
            <name>Repository Engineering Redhat</name>
            <url>https://repository.engineering.redhat.com/nexus/content/groups/eng-ops-public/
            </url>
            <layout>default</layout>
            <releases>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>never</updatePolicy>
            </snapshots>
        </repository>
    </repositories>

</project>
