Merge pull request #483 from broadinstitute/ks_new_maven_build_system
New maven build system
This commit is contained in:
commit
4eaa724be6
|
|
@ -0,0 +1,171 @@
|
|||
#!/bin/sh
|
||||
|
||||
mvn_args="verify"
|
||||
mvn_properties=
|
||||
mvn_clean=
|
||||
unknown_args=
|
||||
property_regex='-D(.*)=(.*)'
|
||||
unit_test_regex='.*UnitTest'
|
||||
post_script=
|
||||
run_type="run"
|
||||
|
||||
for arg in "${@}" ; do
|
||||
if [[ "${arg}" == "dry" ]] ; then
|
||||
run_type="dry"
|
||||
|
||||
elif [[ "${arg}" == "clean" ]] ; then
|
||||
mvn_clean="clean"
|
||||
mvn_args=
|
||||
|
||||
elif [[ "${arg}" =~ ${property_regex} ]] ; then
|
||||
property_name=${BASH_REMATCH[1]}
|
||||
property_value=${BASH_REMATCH[2]}
|
||||
|
||||
if [[ "${property_name}" == "single" ]] ; then
|
||||
test_property="test"
|
||||
test_disabled="it.test"
|
||||
if [[ ! "${property_value}" =~ ${unit_test_regex} ]] ; then
|
||||
test_property="it.test"
|
||||
test_disabled="test"
|
||||
fi
|
||||
|
||||
mvn_properties="${mvn_properties} -D${test_disabled}=disabled -D${test_property}=${property_value}"
|
||||
|
||||
elif [[ "${property_name}" == "test.debug.port" ]] ; then
|
||||
mvn_properties="${mvn_properties} -Dmaven.surefire.debug=\"-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=${property_value}\""
|
||||
|
||||
elif [[ "${property_name}" == "test.default.maxmemory" ]] ; then
|
||||
mvn_properties="${mvn_properties} -Dtest.maxmemory=${property_value}"
|
||||
|
||||
else
|
||||
unknown_args="${unknown_args} \"${arg}\""
|
||||
|
||||
fi
|
||||
|
||||
else
|
||||
if [[ "${arg}" != "dist" && "${mvn_args}" != "" && "${mvn_args}" != "verify" ]] ; then
|
||||
echo "Sorry, this script does not currently support mixing targets." >&2
|
||||
exit 1
|
||||
|
||||
elif [[ "${arg}" == "dist" ]] ; then
|
||||
mvn_args="verify"
|
||||
|
||||
elif [[ "${arg}" == "gatk" ]] ; then
|
||||
mvn_args="verify '-P!queue'"
|
||||
|
||||
elif [[ "${arg}" == "test.compile" ]] ; then
|
||||
mvn_args="test-compile"
|
||||
|
||||
elif [[ "${arg}" == "gatkdocs" ]] ; then
|
||||
local_repo="sitetemprepo"
|
||||
mvn_args="install -Dmaven.repo.local=${local_repo} -Ddisable.queue && mvn site -Dmaven.repo.local=${local_repo} -Ddisable.queue"
|
||||
|
||||
elif [[ "${arg}" == "package.gatk.full" ]] ; then
|
||||
mvn_args="package '-P!private,!queue'"
|
||||
|
||||
elif [[ "${arg}" == "package.gatk.all" ]] ; then
|
||||
mvn_args="package '-P!queue'"
|
||||
|
||||
elif [[ "${arg}" == "package.queue.full" ]] ; then
|
||||
mvn_args="package '-P!private'"
|
||||
|
||||
elif [[ "${arg}" == "package.queue.all" ]] ; then
|
||||
mvn_args="package"
|
||||
|
||||
# elif [[ "${arg}" == "release.gatk.full" ]] ; then
|
||||
# mvn_args="package '-P!private,!queue'"
|
||||
# post_script=" && private/src/main/scripts/shell/copy_release.sh public/gatk-package/target/GenomeAnalysisTK-*.tar.bz2"
|
||||
|
||||
# elif [[ "${arg}" == "release.queue.full" ]] ; then
|
||||
# mvn_args="package '-P!private'"
|
||||
# post_script=" && private/src/main/scripts/shell/copy_release.sh public/queue-package/target/Queue-*.tar.bz2"
|
||||
|
||||
elif [[ "${arg}" == "build-picard-private" ]] ; then
|
||||
mvn_args="mvn install -f private/picard-maven/pom.xml"
|
||||
|
||||
# TODO: clover support
|
||||
# see ant and maven docs for clover:
|
||||
# https://confluence.atlassian.com/display/CLOVER/1.+QuickStart+Guide
|
||||
# https://confluence.atlassian.com/display/CLOVER/Clover-for-Maven+2+and+3+User%27s+Guide
|
||||
#
|
||||
#elif [[ "${arg}" == "clover.report" ]] ; then
|
||||
# mvn_args=...
|
||||
#
|
||||
#elif [[ "${arg}" == "with.clover" ]] ; then
|
||||
# mvn_args=...
|
||||
|
||||
# TODO: This runs *all* commit tests, including the few on Queue.
|
||||
elif [[ "${arg}" == "gatkfull.binary.release.tests" ]] ; then
|
||||
local_repo="sitetemprepo"
|
||||
mvn_args="install -Dmaven.repo.local=${local_repo} && mvn verify"
|
||||
mvn_args="${mvn_args} -Dmaven.repo.local=${local_repo} -Dmaven.javadoc.skip=true"
|
||||
mvn_args="${mvn_args} -Dsting.generate-gatk-extensions.skipped=true"
|
||||
mvn_args="${mvn_args} -Dsting.jar.phase=none -Dsting.unpack.phase=none -Dsting.shade.phase=none"
|
||||
mvn_args="${mvn_args} -Dsting.packagecommittests.skipped=false"
|
||||
|
||||
# TODO: This runs only the pipeline tests (full, non-dry run), but not the commit tests for Queue.
|
||||
elif [[ "${arg}" == "queuefull.binary.release.tests" ]] ; then
|
||||
local_repo="sitetemprepo"
|
||||
mvn_args="install -Dmaven.repo.local=${local_repo} && mvn verify"
|
||||
mvn_args="${mvn_args} -Dmaven.repo.local=${local_repo} -Dmaven.javadoc.skip=true"
|
||||
mvn_args="${mvn_args} -Dsting.generate-gatk-extensions.skipped=true"
|
||||
mvn_args="${mvn_args} -Dsting.jar.phase=none -Dsting.unpack.phase=none -Dsting.shade.phase=none"
|
||||
mvn_args="${mvn_args} -Dsting.packagepipelinetests.skipped=false"
|
||||
mvn_args="${mvn_args} -Dsting.pipelinetests.run=true"
|
||||
|
||||
elif [[ "${arg}" == "committests" ]] ; then
|
||||
mvn_args="verify -Dsting.committests.skipped=false"
|
||||
|
||||
elif [[ "${arg}" == "test" ]] ; then
|
||||
mvn_args="test -Dsting.unittests.skipped=false"
|
||||
|
||||
elif [[ "${arg}" == "unittest" ]] ; then
|
||||
mvn_args="test -Dsting.unittests.skipped=false"
|
||||
|
||||
elif [[ "${arg}" == "integrationtest" ]] ; then
|
||||
mvn_args="verify -Dsting.integrationtests.skipped=false"
|
||||
|
||||
elif [[ "${arg}" == "largescaletest" ]] ; then
|
||||
mvn_args="verify -Dsting.largescaletests.skipped=false"
|
||||
|
||||
elif [[ "${arg}" == "pipelinetest" ]] ; then
|
||||
mvn_args="verify -Dsting.pipelinetests.skipped=false"
|
||||
|
||||
elif [[ "${arg}" == "pipelinetestrun" ]] ; then
|
||||
mvn_args="verify -Dsting.pipelinetests.skipped=false -Dsting.pipelinetests.run=true"
|
||||
|
||||
elif [[ "${arg}" == "fasttest" ]] ; then
|
||||
mvn_args="verify -Dsting.committests.skipped=false -pl private/gatk-private -am -Dresource.bundle.skip=true"
|
||||
|
||||
else
|
||||
unknown_args="${unknown_args} \"${arg}\""
|
||||
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
done
|
||||
|
||||
mvn_cmd=
|
||||
if [[ "${mvn_clean}" != "" ]] ; then
|
||||
if [[ "${mvn_args}" != "" ]] ; then
|
||||
mvn_cmd="mvn ${mvn_clean} && mvn ${mvn_args}"
|
||||
else
|
||||
mvn_cmd="mvn ${mvn_clean}"
|
||||
fi
|
||||
else
|
||||
mvn_cmd="mvn ${mvn_args}"
|
||||
fi
|
||||
|
||||
if [[ "${unknown_args}" != "" ]] ; then
|
||||
echo "Unrecognized arguments:${unknown_args}" >&2
|
||||
|
||||
else
|
||||
echo "Equivalent maven command"
|
||||
echo "${mvn_cmd}${mvn_properties}${post_script}"
|
||||
|
||||
if [[ "${run_type}" != "dry" ]] ; then
|
||||
sh -c "${mvn_cmd}${mvn_properties}${post_script}"
|
||||
fi
|
||||
|
||||
fi
|
||||
117
ivy.xml
117
ivy.xml
|
|
@ -1,117 +0,0 @@
|
|||
<!--
|
||||
~ Copyright (c) 2012, The Broad Institute
|
||||
~
|
||||
~ Permission is hereby granted, free of charge, to any person
|
||||
~ obtaining a copy of this software and associated documentation
|
||||
~ files (the "Software"), to deal in the Software without
|
||||
~ restriction, including without limitation the rights to use,
|
||||
~ copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
~ copies of the Software, and to permit persons to whom the
|
||||
~ Software is furnished to do so, subject to the following
|
||||
~ conditions:
|
||||
~
|
||||
~ The above copyright notice and this permission notice shall be
|
||||
~ included in all copies or substantial portions of the Software.
|
||||
~ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
~ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
|
||||
~ OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
|
||||
~ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
|
||||
~ HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
|
||||
~ WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
||||
~ FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||
~ OTHER DEALINGS IN THE SOFTWARE.
|
||||
-->
|
||||
|
||||
<ivy-module version="1.0">
|
||||
<info organisation="org.broadinstitute" module="Sting"/>
|
||||
<configurations>
|
||||
<conf name="default" description="the core dependencies for the GATK"/>
|
||||
</configurations>
|
||||
<dependencies defaultconf="default">
|
||||
<dependency org="net.sf" name="sam" rev="latest.integration"/>
|
||||
<dependency org="net.sf" name="picard" rev="latest.integration"/>
|
||||
<dependency org="edu.mit.broad" name="picard-private-parts" rev="latest.integration"/>
|
||||
|
||||
<!-- Tribble -->
|
||||
<dependency org="org.broad" name="tribble" rev="latest.integration"/>
|
||||
|
||||
<!-- Variant -->
|
||||
<dependency org="org.broadinstitute" name="variant" rev="latest.integration"/>
|
||||
|
||||
<dependency org="log4j" name="log4j" rev="1.2.15"/>
|
||||
<dependency org="javax.mail" name="mail" rev="1.4.4"/>
|
||||
<dependency org="colt" name="colt" rev="1.2.0"/>
|
||||
<dependency org="it.unimi.dsi" name="fastutil" rev="6.5.3" />
|
||||
|
||||
<!-- <dependency org="jboss" name="javassist" rev="3.7.ga"/> -->
|
||||
<dependency org="org.simpleframework" name="simple-xml" rev="2.0.4"/>
|
||||
<dependency org="org.apache.bcel" name="bcel" rev="5.2"/>
|
||||
|
||||
<!-- Dependencies for reflections mvn repository -->
|
||||
<dependency org="org.reflections" name="reflections" rev="0.9.8"/>
|
||||
<dependency org="org.slf4j" name="slf4j-log4j12" rev="1.6.1"/>
|
||||
|
||||
<!-- Matrix package from math.nist.gov -->
|
||||
<dependency org="gov.nist" name="Jama" rev="1.0.2"/>
|
||||
|
||||
<!-- Dependencies for the graph aligner -->
|
||||
<dependency org="net.sf.jgrapht" name="jgrapht" rev="0.8.3"/>
|
||||
|
||||
<!-- Dependencies for the html walker documention -->
|
||||
<dependency org="org.freemarker" name="freemarker" rev="2.3.18"/>
|
||||
|
||||
<!-- Commons Dependencies -->
|
||||
<dependency org="org.apache.commons" name="commons-email" rev="1.2"/>
|
||||
<dependency org="org.apache.commons" name="commons-jexl" rev="2.1.1"/>
|
||||
<dependency org="commons-lang" name="commons-lang" rev="2.5"/>
|
||||
<dependency org="commons-logging" name="commons-logging" rev="1.1.1"/>
|
||||
<dependency org="commons-io" name="commons-io" rev="2.1"/>
|
||||
<dependency org="commons-collections" name="commons-collections" rev="3.2.1"/>
|
||||
<dependency org="org.apache.commons" name="commons-math" rev="2.2"/>
|
||||
|
||||
<!-- Lucene core utilities -->
|
||||
<!-- <dependency org="org.apache.lucene" name="lucene-core" rev="3.0.3"/> -->
|
||||
|
||||
<!-- Dependencies for LSF, DRMAA, and other C libraries -->
|
||||
<dependency org="net.java.dev.jna" name="jna" rev="3.2.7"/>
|
||||
|
||||
<!-- Dependencies for amazon.com S3 support -->
|
||||
<dependency org="net.java.dev.jets3t" name="jets3t" rev="0.8.1"/>
|
||||
|
||||
<!-- Dependencies for GridEngine -->
|
||||
<dependency org="net.sf.gridscheduler" name="drmaa" rev="latest.integration"/>
|
||||
|
||||
<!-- Scala dependancies -->
|
||||
<dependency org="org.scala-lang" name="scala-compiler" rev="2.10.2"/>
|
||||
<dependency org="org.scala-lang" name="scala-library" rev="2.10.2"/>
|
||||
|
||||
<!-- testing and evaluation dependencies -->
|
||||
<dependency org="org.testng" name="testng" rev="6.8"/>
|
||||
<dependency org="org.uncommons" name="reportng" rev="1.1.2"/>
|
||||
<dependency org="com.google.caliper" name="caliper" rev="0.5-rc1"/>
|
||||
<dependency org="com.google.inject" name="guice" rev="3.0"/>
|
||||
|
||||
<!-- Contracts for Java and dependencies -->
|
||||
<dependency org="com.google.code.cofoja" name="cofoja" rev="1.0-r139"/>
|
||||
<dependency org="asm" name="asm-all" rev="3.3.1"/>
|
||||
|
||||
<!-- POI, for reading pipeline files -->
|
||||
<dependency org="org.apache.poi" name="poi" rev="3.8-beta3"/>
|
||||
<dependency org="org.apache.poi" name="poi-ooxml" rev="3.8-beta3"/>
|
||||
|
||||
<!-- snpEff annotator for pipelines -->
|
||||
<dependency org="net.sf.snpeff" name="snpeff" rev="2.0.5"/>
|
||||
|
||||
<!-- MongoDB for the GXDB project -->
|
||||
<dependency org="org.mongodb" name="mongo-java-driver" rev="2.7.3"/>
|
||||
|
||||
<!-- GSON and HTTP for talking to the REST API on Vanilla Forums -->
|
||||
<dependency org="com.google.code.gson" name="gson" rev="2.2.2"/>
|
||||
<dependency org="org.apache.httpcomponents" name="httpclient" rev="4.1.1"/>
|
||||
|
||||
<!-- Exclude dependencies on sun libraries where the downloads aren't available but included in the jvm. -->
|
||||
<exclude org="javax.servlet"/>
|
||||
<exclude org="javax.jms"/>
|
||||
<exclude org="com.sun.*"/>
|
||||
</dependencies>
|
||||
</ivy-module>
|
||||
|
|
@ -0,0 +1,778 @@
|
|||
<?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>
|
||||
|
||||
<!--
|
||||
This pom is the aggregator for all sting/gatk poms
|
||||
See also:
|
||||
http://maven.apache.org/pom.html#Inheritance_v
|
||||
http://maven.apache.org/guides/introduction/introduction-to-the-pom.html#Project_Inheritance_vs_Project_Aggregation
|
||||
http://stackoverflow.com/questions/1992213/maven-parent-pom-vs-modules-pom
|
||||
-->
|
||||
|
||||
<parent>
|
||||
<groupId>org.broadinstitute.sting</groupId>
|
||||
<artifactId>sting-root</artifactId>
|
||||
<version>2.8-SNAPSHOT</version>
|
||||
<relativePath>public/sting-root</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>sting-aggregator</artifactId>
|
||||
<packaging>pom</packaging>
|
||||
<name>Sting Aggregator</name>
|
||||
|
||||
<modules>
|
||||
<module>public</module>
|
||||
<!-- private & protected optionally enabled as profiles -->
|
||||
</modules>
|
||||
|
||||
<properties>
|
||||
<sting.basedir>${project.basedir}</sting.basedir>
|
||||
<resource.bundle.path>StingText.properties</resource.bundle.path>
|
||||
<resource.bundle.skip>false</resource.bundle.skip>
|
||||
<!-- TODO: Need a better a way to say "don't include hidden" by default -->
|
||||
<gatkdocs.include.hidden>-build-timestamp "${maven.build.timestamp}"</gatkdocs.include.hidden>
|
||||
<sting.jar.phase>package</sting.jar.phase>
|
||||
<sting.test-utils.jar.phase>none</sting.test-utils.jar.phase>
|
||||
<sting.packagecommittests.skipped>true</sting.packagecommittests.skipped>
|
||||
<sting.packageunittests.skipped>${sting.packagecommittests.skipped}</sting.packageunittests.skipped>
|
||||
<sting.packageintegrationtests.skipped>${sting.packagecommittests.skipped}</sting.packageintegrationtests.skipped>
|
||||
<sting.packagepipelinetests.skipped>${sting.packagecommittests.skipped}</sting.packagepipelinetests.skipped>
|
||||
<sting.packagelargescaletests.skipped>true</sting.packagelargescaletests.skipped>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>com.sun</groupId>
|
||||
<artifactId>tools</artifactId>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<!-- Plugin configuration -->
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-clean-plugin</artifactId>
|
||||
<configuration>
|
||||
<filesets>
|
||||
<!--
|
||||
TODO: Once GATKDoclet stops hard coding paths, we remove this and leave
|
||||
TODO: it to the standard maven conventions to clean up for us
|
||||
-->
|
||||
<fileset>
|
||||
<directory>gatkdocs</directory>
|
||||
</fileset>
|
||||
<fileset>
|
||||
<directory>${basedir}</directory>
|
||||
<includes>
|
||||
<include>javadoc.sh</include>
|
||||
<include>options</include>
|
||||
<include>packages</include>
|
||||
</includes>
|
||||
</fileset>
|
||||
<!--
|
||||
Shade dumps this temp file in basedir, with no good way to reconfigure.
|
||||
https://jira.codehaus.org/browse/MSHADE-145
|
||||
-->
|
||||
<fileset>
|
||||
<directory>${basedir}</directory>
|
||||
<includes>
|
||||
<include>dependency-reduced-pom.xml</include>
|
||||
</includes>
|
||||
</fileset>
|
||||
</filesets>
|
||||
</configuration>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>unpack-direct-dependencies</id>
|
||||
<goals>
|
||||
<goal>unpack-dependencies</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<excludeTransitive>true</excludeTransitive>
|
||||
<outputDirectory>${project.build.outputDirectory}</outputDirectory>
|
||||
<includeTypes>jar</includeTypes>
|
||||
<excludeScope>system</excludeScope>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<!-- TODO: Change the ResourceBundleExtractorDoclet to not require log4j.properties file -->
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-resources-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>copy-resource-bundle-log4j</id>
|
||||
<goals>
|
||||
<goal>copy-resources</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<outputDirectory>${project.reporting.outputDirectory}/apidocs</outputDirectory>
|
||||
<resources>
|
||||
<resource>
|
||||
<directory>${sting.basedir}/sting-utils/src/main/config/org/broadinstitute/sting/utils/help</directory>
|
||||
</resource>
|
||||
</resources>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>extract-resource-bundle</id>
|
||||
<goals>
|
||||
<goal>javadoc</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<!-- Allow skipping for "fasttest" -->
|
||||
<skip>${resource.bundle.skip}</skip>
|
||||
<doclet>org.broadinstitute.sting.utils.help.ResourceBundleExtractorDoclet</doclet>
|
||||
<!-- Required as doclet uses reflection to access classes for documentation, instead of source java-->
|
||||
<docletPath>${project.build.outputDirectory}</docletPath>
|
||||
<docletArtifact>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<!-- TODO: THIS IS SUPPOSED TO BE STING-UTILS! -->
|
||||
<artifactId>gatk-framework</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</docletArtifact>
|
||||
<maxmemory>2g</maxmemory>
|
||||
<useStandardDocletOptions>false</useStandardDocletOptions>
|
||||
<quiet>true</quiet>
|
||||
<additionalparam>-build-timestamp "${maven.build.timestamp}" -absolute-version ${build.version} -out ${project.build.outputDirectory}/${resource.bundle.path}</additionalparam>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-compiler-plugin</artifactId>
|
||||
<configuration>
|
||||
<proc>none</proc>
|
||||
<annotationProcessors>
|
||||
<annotationProcessor>com.google.java.contract.core.apt.AnnotationProcessor</annotationProcessor>
|
||||
</annotationProcessors>
|
||||
<compilerArguments>
|
||||
<!--
|
||||
For com.sun.istack.internal. Because bootclasspath is set to include rt.jar, now jce.jar must be set for the Oracle only javax.crypto also.
|
||||
TODO: This Sun internal tool usage needs to be removed ASAP!
|
||||
-->
|
||||
<bootclasspath>${java.home}/lib/rt.jar:${java.home}/lib/jce.jar</bootclasspath>
|
||||
</compilerArguments>
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-compile</id>
|
||||
<phase>none</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>default-testCompile</id>
|
||||
<phase>none</phase>
|
||||
</execution>
|
||||
<!--
|
||||
Explicit package-info creation to match existing ant output.
|
||||
-->
|
||||
<execution>
|
||||
<id>compile-package-info</id>
|
||||
<goals>
|
||||
<goal>compile</goal>
|
||||
</goals>
|
||||
<phase>compile</phase>
|
||||
<configuration>
|
||||
<compilerArgs>
|
||||
<arg>-Xpkginfo:always</arg>
|
||||
</compilerArgs>
|
||||
<includes>
|
||||
<include>**/package-info.java</include>
|
||||
</includes>
|
||||
</configuration>
|
||||
</execution>
|
||||
<!--
|
||||
TODO: Currently disabled in build.xml. Here as well.
|
||||
<execution>
|
||||
<id>compile-annotations</id>
|
||||
<phase>compile</phase>
|
||||
<goals>
|
||||
<goal>compile</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<proc>only</proc>
|
||||
</configuration>
|
||||
</execution>
|
||||
-->
|
||||
<execution>
|
||||
<id>compile-java</id>
|
||||
<goals>
|
||||
<goal>compile</goal>
|
||||
</goals>
|
||||
<phase>compile</phase>
|
||||
<configuration>
|
||||
<!--
|
||||
Package info is supposed to be in source:
|
||||
http://maven.apache.org/plugins/maven-javadoc-plugin/examples/javadoc-resources.html
|
||||
But maven-compile-plugin doesn't auto exclude these:
|
||||
https://jira.codehaus.org/browse/MCOMPILER-205?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=326505#comment-326505
|
||||
So, explicitly exclude them
|
||||
-->
|
||||
<excludes>
|
||||
<exclude>**/package-info.java</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</execution>
|
||||
<!--
|
||||
TODO: Currently disabled in build.xml. Here as well.
|
||||
<execution>
|
||||
<id>testCompile-annotations</id>
|
||||
<phase>test-compile</phase>
|
||||
<goals>
|
||||
<goal>testCompile</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<proc>only</proc>
|
||||
</configuration>
|
||||
</execution>
|
||||
-->
|
||||
<execution>
|
||||
<id>testCompile-java</id>
|
||||
<goals>
|
||||
<goal>testCompile</goal>
|
||||
</goals>
|
||||
<phase>test-compile</phase>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.scala-tools</groupId>
|
||||
<artifactId>maven-scala-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<goals>
|
||||
<goal>compile</goal>
|
||||
<goal>testCompile</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-jar-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>default-jar</id>
|
||||
<phase>${sting.jar.phase}</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>test-utils</id>
|
||||
<goals>
|
||||
<goal>jar</goal>
|
||||
</goals>
|
||||
<phase>${sting.test-utils-jar.phase}</phase>
|
||||
<configuration>
|
||||
<classesDirectory>${project.build.testOutputDirectory}</classesDirectory>
|
||||
<classifier>test-utils</classifier>
|
||||
<!--
|
||||
TODO: Excluding actual tests from tests-utils jar is required because the same test classes
|
||||
TODO: cannot be in both the 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: See also: http://maven.apache.org/plugins/maven-jar-plugin/usage.html#The_preferred_way
|
||||
|
||||
TODO: Then that dependency won't have test classes that will also run from the
|
||||
TODO: test classes directory during the invoked package test.
|
||||
-->
|
||||
<excludes>
|
||||
<exclude>**/*UnitTest.class</exclude>
|
||||
<exclude>**/*UnitTest$*.class</exclude>
|
||||
<exclude>**/*IntegrationTest.class</exclude>
|
||||
<exclude>**/*IntegrationTest$*.class</exclude>
|
||||
<exclude>**/*PipelineTest.class</exclude>
|
||||
<exclude>**/*PipelineTest$*.class</exclude>
|
||||
<exclude>**/*LargeScaleTest.class</exclude>
|
||||
<exclude>**/*LargeScaleTest.class</exclude>
|
||||
</excludes>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-shade-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>sting-executable</id>
|
||||
<goals>
|
||||
<goal>shade</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<minimizeJar>true</minimizeJar>
|
||||
<artifactSet>
|
||||
<excludes>
|
||||
<exclude>org.broadinstitute.sting:gsalib:tar.gz:*</exclude>
|
||||
<exclude>org.broadinstitute.sting:*:tar.bz2:example-resources</exclude>
|
||||
</excludes>
|
||||
</artifactSet>
|
||||
<transformers>
|
||||
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
|
||||
<manifestEntries>
|
||||
<Main-Class>${app.main.class}</Main-Class>
|
||||
</manifestEntries>
|
||||
</transformer>
|
||||
<transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
|
||||
<resource>${resource.bundle.path}</resource>
|
||||
</transformer>
|
||||
</transformers>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-assembly-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>example-resources</id>
|
||||
<goals>
|
||||
<goal>single</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<descriptors>
|
||||
<descriptor>src/main/assembly/example-resources.xml</descriptor>
|
||||
</descriptors>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>binary-dist</id>
|
||||
<goals>
|
||||
<goal>single</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<descriptors>
|
||||
<descriptor>src/main/assembly/binary-dist.xml</descriptor>
|
||||
</descriptors>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
<!-- TODO: Remove temporary symbolic link creation, after fixing test paths to use local resources. -->
|
||||
<plugin>
|
||||
<groupId>com.pyx4j</groupId>
|
||||
<artifactId>maven-junction-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>link-public-testdata</id>
|
||||
<goals>
|
||||
<goal>link</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/public/testdata</dst>
|
||||
<src>${sting.basedir}/public/gatk-framework/src/test/resources</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>unlink-public-testdata</id>
|
||||
<goals>
|
||||
<goal>unlink</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/public/testdata</dst>
|
||||
<src>${sting.basedir}/public/gatk-framework/src/test/resources</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>link-private-testdata</id>
|
||||
<goals>
|
||||
<goal>link</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/private/testdata</dst>
|
||||
<src>${sting.basedir}/private/gatk-private/src/test/resources</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>unlink-private-testdata</id>
|
||||
<goals>
|
||||
<goal>unlink</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/private/testdata</dst>
|
||||
<src>${sting.basedir}/private/gatk-private/src/test/resources</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>link-public-qscript</id>
|
||||
<goals>
|
||||
<goal>link</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/public/scala/qscript</dst>
|
||||
<src>${sting.basedir}/public/queue-framework/src/main/qscripts</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>unlink-public-qscript</id>
|
||||
<goals>
|
||||
<goal>unlink</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/public/scala/qscript</dst>
|
||||
<src>${sting.basedir}/public/queue-framework/src/main/qscripts</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>link-private-qscript</id>
|
||||
<goals>
|
||||
<goal>link</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/private/scala/qscript</dst>
|
||||
<src>${sting.basedir}/private/queue-private/src/main/qscripts</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>unlink-private-qscript</id>
|
||||
<goals>
|
||||
<goal>unlink</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${basedir}/private/scala/qscript</dst>
|
||||
<src>${sting.basedir}/private/queue-private/src/main/qscripts</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>link-git-release</id>
|
||||
<goals>
|
||||
<goal>link</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<links>
|
||||
<link>
|
||||
<dst>${project.build.directory}/${sting.binary-dist.name}-${build.version}.tar.bz2</dst>
|
||||
<src>${project.build.directory}/${project.build.finalName}-binary-dist.tar.bz2</src>
|
||||
</link>
|
||||
</links>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-invoker-plugin</artifactId>
|
||||
<configuration>
|
||||
<skipInvocation>true</skipInvocation>
|
||||
<debug>false</debug>
|
||||
<pom>${sting.basedir}/public/package-tests/pom.xml</pom>
|
||||
<noLog>true</noLog>
|
||||
<streamLogs>true</streamLogs>
|
||||
<localRepositoryPath>${sting.basedir}/${maven.repo.local}</localRepositoryPath>
|
||||
<properties>
|
||||
<test>${test}</test>
|
||||
<it.test>${it.test}</it.test>
|
||||
<skip>false</skip>
|
||||
<maven.test.skip>false</maven.test.skip>
|
||||
<sting.packagetests.artifactId>${sting.packagetests.artifactId}</sting.packagetests.artifactId>
|
||||
<sting.packagetests.testClasses>${project.build.testOutputDirectory}</sting.packagetests.testClasses>
|
||||
<sting.packagetests.basedir>${project.basedir}</sting.packagetests.basedir>
|
||||
<sting.pipelinetests.run>${sting.pipelinetests.run}</sting.pipelinetests.run>
|
||||
<maven.surefire.debug>${maven.surefire.debug}</maven.surefire.debug>
|
||||
<maven.failsafe.debug>${maven.failsafe.debug}</maven.failsafe.debug>
|
||||
</properties>
|
||||
<!--
|
||||
To allow using separated integration-test and verify, each execution must use a separate reportsDirectory.
|
||||
|
||||
Otherwise, when an empty "pipeline test" later runs on an IntegrationTest class,
|
||||
it overwrites the results of the previous invocation always with a zero exit status.
|
||||
|
||||
Mixing in the test name into the reportsDirectory also avoids collisions, when different maven jobs run tests in parallel.
|
||||
|
||||
Similarly generating unique failsafe summary reports to avoid collisions.
|
||||
-->
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>package-unittests</id>
|
||||
<goals>
|
||||
<goal>run</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<goals>
|
||||
<goal>test</goal>
|
||||
</goals>
|
||||
<reportsDirectory>${project.build.directory}/invoker-reports/unit/${test}</reportsDirectory>
|
||||
<skipInvocation>${sting.packageunittests.skipped}</skipInvocation>
|
||||
<properties>
|
||||
<unittests.profile.enabled>true</unittests.profile.enabled>
|
||||
<sting.packageunittests.skipped>${sting.packageunittests.skipped}</sting.packageunittests.skipped>
|
||||
</properties>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>package-integrationtests</id>
|
||||
<goals>
|
||||
<goal>integration-test</goal>
|
||||
<goal>verify</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<goals>
|
||||
<goal>verify</goal>
|
||||
</goals>
|
||||
<reportsDirectory>${project.build.directory}/invoker-reports/integration/${it.test}</reportsDirectory>
|
||||
<skipInvocation>${sting.packageintegrationtests.skipped}</skipInvocation>
|
||||
<properties>
|
||||
<integrationtests.profile.enabled>true</integrationtests.profile.enabled>
|
||||
<sting.packageintegrationtests.skipped>${sting.packageintegrationtests.skipped}</sting.packageintegrationtests.skipped>
|
||||
<failsafe.summaryFile>${project.build.directory}/failsafe-reports/integration/failsafe-summary-${it.test}.xml</failsafe.summaryFile>
|
||||
</properties>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>package-pipelinetests</id>
|
||||
<goals>
|
||||
<goal>integration-test</goal>
|
||||
<goal>verify</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<goals>
|
||||
<goal>verify</goal>
|
||||
</goals>
|
||||
<reportsDirectory>${project.build.directory}/invoker-reports/pipeline/${it.test}</reportsDirectory>
|
||||
<skipInvocation>${sting.packagepipelinetests.skipped}</skipInvocation>
|
||||
<properties>
|
||||
<integrationtests.profile.enabled>true</integrationtests.profile.enabled>
|
||||
<sting.packagepipelinetests.skipped>${sting.packagepipelinetests.skipped}</sting.packagepipelinetests.skipped>
|
||||
<failsafe.summaryFile>${project.build.directory}/failsafe-reports/pipeline/failsafe-summary-${it.test}.xml</failsafe.summaryFile>
|
||||
</properties>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>package-largescaletests</id>
|
||||
<goals>
|
||||
<goal>integration-test</goal>
|
||||
<goal>verify</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<goals>
|
||||
<goal>verify</goal>
|
||||
</goals>
|
||||
<reportsDirectory>${project.build.directory}/invoker-reports/largescale/${it.test}</reportsDirectory>
|
||||
<skipInvocation>${sting.packagelargescaletests.skipped}</skipInvocation>
|
||||
<properties>
|
||||
<integrationtests.profile.enabled>true</integrationtests.profile.enabled>
|
||||
<sting.packagelargescaletests.skipped>${sting.packagelargescaletests.skipped}</sting.packagelargescaletests.skipped>
|
||||
<failsafe.summaryFile>${project.build.directory}/failsafe-reports/largescale/failsafe-summary-${it.test}.xml</failsafe.summaryFile>
|
||||
</properties>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-install-plugin</artifactId>
|
||||
<version>2.5</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>install-package</id>
|
||||
<goals>
|
||||
<goal>install-file</goal>
|
||||
</goals>
|
||||
<phase>none</phase>
|
||||
<configuration>
|
||||
<generatePom>true</generatePom>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>${project.artifactId}</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<packaging>${project.packaging}</packaging>
|
||||
<file>${project.build.directory}/${project.build.finalName}.${project.packaging}</file>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
|
||||
<!-- Invoke plugins that always run -->
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-failsafe-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.pyx4j</groupId>
|
||||
<artifactId>maven-junction-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>link-public-testdata</id>
|
||||
<phase>process-test-resources</phase>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>unlink-public-testdata</id>
|
||||
<phase>clean</phase>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-clean-plugin</artifactId>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.google.code.sortpom</groupId>
|
||||
<artifactId>maven-sortpom-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>package-tests</id>
|
||||
<goals>
|
||||
<goal>sort</goal>
|
||||
</goals>
|
||||
<phase>verify</phase>
|
||||
<inherited>false</inherited>
|
||||
<configuration>
|
||||
<pomFile>public/package-tests/pom.xml</pomFile>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
|
||||
<reporting>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<version>2.9.1</version>
|
||||
<reportSets>
|
||||
<!-- By not specifying an id, shut off all default javadocs from mvn site -->
|
||||
<reportSet>
|
||||
<reports />
|
||||
</reportSet>
|
||||
<reportSet>
|
||||
<id>generate-gatk-docs</id>
|
||||
<reports>
|
||||
<report>aggregate</report>
|
||||
</reports>
|
||||
<!-- Only generate the GATK Docs across the parent aggregation, not the children too. -->
|
||||
<inherited>false</inherited>
|
||||
<configuration>
|
||||
<doclet>org.broadinstitute.sting.utils.help.GATKDoclet</doclet>
|
||||
<docletArtifact>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>gatk-package</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</docletArtifact>
|
||||
<useStandardDocletOptions>false</useStandardDocletOptions>
|
||||
<quiet>true</quiet>
|
||||
<show>private</show>
|
||||
<!--
|
||||
TODO: Stop GATKDoclet from hardcoding paths and start using parameters.
|
||||
For now... just run from the base directory, target/site/../..
|
||||
-->
|
||||
<destDir>../..</destDir>
|
||||
<additionalparam>-build-timestamp "${maven.build.timestamp}" -absolute-version ${build.version} ${gatkdocs.include.hidden}</additionalparam>
|
||||
<!--
|
||||
TODO: Leaving this true applies a patch to the git commited file
|
||||
TODO: private/resources/clover/api/index.html
|
||||
TODO: Determine if this file was generated and shoudldn't be touched,
|
||||
TODO: or patch the file and commit a new version.
|
||||
-->
|
||||
<applyJavadocSecurityFix>false</applyJavadocSecurityFix>
|
||||
</configuration>
|
||||
</reportSet>
|
||||
</reportSets>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</reporting>
|
||||
|
||||
<profiles>
|
||||
<!-- Optionally include protected -->
|
||||
<profile>
|
||||
<id>protected</id>
|
||||
<activation>
|
||||
<file>
|
||||
<exists>${basedir}/protected/pom.xml</exists>
|
||||
</file>
|
||||
</activation>
|
||||
<modules>
|
||||
<module>protected</module>
|
||||
</modules>
|
||||
</profile>
|
||||
|
||||
<!-- Optionally include private -->
|
||||
<profile>
|
||||
<id>private</id>
|
||||
<activation>
|
||||
<file>
|
||||
<exists>${basedir}/private/pom.xml</exists>
|
||||
</file>
|
||||
</activation>
|
||||
<modules>
|
||||
<module>private</module>
|
||||
</modules>
|
||||
</profile>
|
||||
</profiles>
|
||||
|
||||
</project>
|
||||
|
|
@ -0,0 +1,146 @@
|
|||
<?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.8-SNAPSHOT</version>
|
||||
<relativePath>../..</relativePath>
|
||||
</parent>
|
||||
|
||||
<artifactId>gatk-protected</artifactId>
|
||||
<packaging>jar</packaging>
|
||||
<name>GATK Protected</name>
|
||||
|
||||
<properties>
|
||||
<sting.basedir>${project.basedir}/../..</sting.basedir>
|
||||
<sting.packagetests.artifactId>gatk-package</sting.packagetests.artifactId>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>gatk-framework</artifactId>
|
||||
<version>${project.version}</version>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>net.sf.jgrapht</groupId>
|
||||
<artifactId>jgrapht</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>gov.nist</groupId>
|
||||
<artifactId>Jama</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>it.unimi.dsi</groupId>
|
||||
<artifactId>fastutil</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>sting-utils</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<classifier>test-utils</classifier>
|
||||
<type>test-jar</type>
|
||||
<scope>test</scope>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>${project.groupId}</groupId>
|
||||
<artifactId>gatk-framework</artifactId>
|
||||
<version>${project.version}</version>
|
||||
<classifier>test-utils</classifier>
|
||||
<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-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-invoker-plugin</artifactId>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>package-unittests</id>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>package-integrationtests</id>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>package-largescaletests</id>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>package-pipelinetests</id>
|
||||
</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>
|
||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue