gatk-3.8/public/gatk-framework/pom.xml

177 lines
7.0 KiB
XML

<?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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.broadinstitute.sting</groupId>
<artifactId>sting-aggregator</artifactId>
<version>2.6-SNAPSHOT</version>
<relativePath>../..</relativePath>
</parent>
<artifactId>gatk-framework</artifactId>
<packaging>jar</packaging>
<name>GATK Framework</name>
<properties>
<sting.basedir>${project.basedir}/../..</sting.basedir>
<sting.packagetests.artifactId>gatk-package</sting.packagetests.artifactId>
</properties>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>sting-utils</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>sting-utils</artifactId>
<version>${project.version}</version>
<type>test-jar</type>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.google.caliper</groupId>
<artifactId>caliper</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<executions>
<execution>
<id>example-resources</id>
<phase>generate-resources</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-resource-bundle-log4j</id>
<phase>prepare-package</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<executions>
<execution>
<id>extract-resource-bundle</id>
<phase>prepare-package</phase>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>test-jar</goal>
</goals>
</execution>
</executions>
</plugin>
<!--
TODO: disable.gatk-framework.test.dependency is required because the the same test classes
TODO: cannot be in both the gatk-framework test artifact AND the test classes directory.
TODO: Otherwise maven throws an [ERROR] java.lang.RuntimeException: Duplicate test set
TODO: This is due to AbstractSurefireMojo.scanForTestClasses() adding both scanDirectories() and scanDependencies().
TODO: Pain to debug as exception is three maven invoker levels deep, outer maven, maven-inovker-plugin, then forked tests!
TODO: Move BaseTest and other non UnitTests into the sting-utils test jar/artifact.
TODO: Then that dependency won't have test classes that will also run from the gatk-framework
TODO: test classes directory during the invoked package test.
-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-invoker-plugin</artifactId>
<executions>
<execution>
<id>package-unittests</id>
<configuration>
<properties>
<disable.gatk-framework.test.dependency>true</disable.gatk-framework.test.dependency>
</properties>
</configuration>
</execution>
<execution>
<id>package-integrationtests</id>
<configuration>
<properties>
<disable.gatk-framework.test.dependency>true</disable.gatk-framework.test.dependency>
</properties>
</configuration>
</execution>
<execution>
<id>package-largescaletests</id>
<configuration>
<properties>
<disable.gatk-framework.test.dependency>true</disable.gatk-framework.test.dependency>
</properties>
</configuration>
</execution>
<execution>
<id>package-pipelinetests</id>
<configuration>
<properties>
<disable.gatk-framework.test.dependency>true</disable.gatk-framework.test.dependency>
</properties>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>private</id>
<activation>
<file>
<exists>${basedir}/../../private/gatk-private/pom.xml</exists>
</file>
</activation>
<build>
<plugins>
<!-- TODO: All tests require access to private. For now. -->
<plugin>
<groupId>com.pyx4j</groupId>
<artifactId>maven-junction-plugin</artifactId>
<executions>
<execution>
<id>link-private-testdata</id>
<phase>process-test-resources</phase>
</execution>
<execution>
<id>unlink-private-testdata</id>
<phase>clean</phase>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>