Add new 'module' XML tag, that can import modules from supplementary files.

git-svn-id: file:///humgen/gsa-scr1/gsa-engineering/svn_contents/trunk@2624 348d0f76-0448-11de-a6fe-93d51630548a
This commit is contained in:
hanna 2010-01-19 01:56:04 +00:00
parent ba19afd529
commit e1fba42fdb
11 changed files with 169 additions and 120 deletions

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>AnalyzeCovariates</name>
<executable>
<name>AnalyzeCovariates</name>
<main-class>org.broadinstitute.sting.analyzecovariates.AnalyzeCovariates</main-class>
<dependencies>
<!-- Recalibration analysis script -->
<class>org.broadinstitute.sting.analyzecovariates.AnalyzeCovariates</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.DinucCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.QualityScoreCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CycleCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.ReadGroupCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TileCovariate</class>
</dependencies>
</executable>
</package>

View File

@ -32,28 +32,12 @@
<!-- Create an output directory for the package -->
<mkdir dir="{$package.dir}"/>
<xsl:for-each select="executable">
<!-- Create a jar file containing the specified classes / packages and all their dependencies -->
<jar jarfile="{concat($package.dir,name,'.jar')}">
<classfileset dir="{$staging.dir}">
<root classname="{main-class}"/>
<xsl:for-each select="dependencies/package">
<rootfileset dir="{$staging.dir}" includes="{concat(translate(current(),'.','/'),'/','*.class')}" />
</xsl:for-each>
<xsl:for-each select="dependencies/class">
<root classname="{current()}" />
</xsl:for-each>
</classfileset>
<xsl:for-each select="dependencies/properties">
<fileset file="{$staging.dir}/{current()}" />
</xsl:for-each>
<xsl:for-each select="dependencies/file">
<fileset file="{$staging.dir}/{current()}" />
</xsl:for-each>
<manifest>
<attribute name="Main-Class" value="{main-class}"/>
</manifest>
</jar>
<!-- Create the executable sections -->
<xsl:apply-templates select="executable" />
<!-- Add in other modules -->
<xsl:for-each select="module">
<xsl:apply-templates select="document(current())/package/executable" />
</xsl:for-each>
<!-- Include various script files -->
@ -97,6 +81,39 @@
<symlink link="{concat($target.dir,'/',$short.name)}" resource="{$full.path}" overwrite="true" />
</xsl:template>
<xsl:template match="executable">
<!-- Create a jar file containing the specified classes / packages and all their dependencies -->
<jar jarfile="{concat($package.dir,name,'.jar')}">
<classfileset dir="{$staging.dir}">
<root classname="{main-class}"/>
</classfileset>
<xsl:for-each select="properties">
<fileset file="{$staging.dir}/{current()}" />
</xsl:for-each>
<xsl:for-each select="module">
<xsl:apply-templates select="document(current())/package/executable/dependencies" />
</xsl:for-each>
<xsl:apply-templates select="dependencies" />
<manifest>
<attribute name="Main-Class" value="{main-class}"/>
</manifest>
</jar>
</xsl:template>
<xsl:template match="dependencies">
<classfileset dir="{$staging.dir}">
<xsl:for-each select="package">
<rootfileset dir="{$staging.dir}" includes="{concat(translate(current(),'.','/'),'/','*.class')}" />
</xsl:for-each>
<xsl:for-each select="class">
<root classname="{current()}" />
</xsl:for-each>
</classfileset>
<xsl:for-each select="file">
<fileset file="{$staging.dir}/{current()}" />
</xsl:for-each>
</xsl:template>
<!-- Determine the short name (filename w/o directory structure of the given filename -->
<xsl:template name="get-short-name">
<xsl:param name="string"/>

View File

@ -6,46 +6,21 @@
<executable>
<name>GATK-GSA-Pipeline</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<properties>StingText.properties</properties>
<module>QualityScoresRecalibrationModule.xml</module>
<module>LocalRealignmentAroundIndelsModule.xml</module>
<module>UnifiedGenotyperModule.xml</module>
<module>VariantFiltrationModule.xml</module>
<module>VariantAnnotatorModule.xml</module>
<dependencies>
<!-- Text extracted from the javadocs -->
<properties>StingText.properties</properties>
<!-- Filters -->
<package>org.broadinstitute.sting.gatk.filters</package>
<!-- Quality scores recalibration -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CovariateCounterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TableRecalibrationWalker</class>
<!-- Recalibration Covariates -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.DinucCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.PositionCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.MinimumNQSCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.MappingQualityCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.QualityScoreCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.PrimerRoundCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CycleCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.ReadGroupCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.HomopolymerCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TileCovariate</class>
<!-- Local realignment around indels -->
<class>org.broadinstitute.sting.gatk.walkers.indels.CleanedReadInjector</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalCleanerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalMergerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.MismatchIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.SNPClusterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperV2Walker</class>
<!-- Unified genotyper -->
<class>org.broadinstitute.sting.gatk.walkers.genotyper.UnifiedGenotyper</class>
<!-- Variant filtration -->
<class>org.broadinstitute.sting.gatk.walkers.filters.VariantFiltrationWalker</class>
<!-- Variant annotator -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.VariantAnnotator</class>
<!-- And the annotations -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.AlleleBalance</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.DepthOfCoverage</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.HomopolymerRun</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.RMSMappingQuality</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.SpanningDeletions</class>
<!-- From playground -->
<class>org.broadinstitute.sting.playground.gatk.walkers.varianteval.VariantEvalWalker</class>
<class>org.broadinstitute.sting.playground.gatk.walkers.contamination.FindContaminatingReadGroupsWalker</class>

View File

@ -7,9 +7,13 @@
<executable>
<name>GATK-Picard</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<properties>StingText.properties</properties>
<module>QualityScoresRecalibrationModule.xml</module>
<module>LocalRealignmentAroundIndelsModule.xml</module>
<module>UnifiedGenotyperModule.xml</module>
<module>VariantFiltrationModule.xml</module>
<module>VariantAnnotatorModule.xml</module>
<dependencies>
<!-- Text extracted from the javadocs -->
<properties>StingText.properties</properties>
<!-- Filters -->
<package>org.broadinstitute.sting.gatk.filters</package>
<class>org.broadinstitute.sting.gatk.walkers.coverage.DepthOfCoverageWalker</class>
@ -18,41 +22,12 @@
<class>org.broadinstitute.sting.gatk.walkers.qc.CountLociWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.qc.CountReadsWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.qc.ValidatingPileupWalker</class>
<!-- Quality scores recalibration -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CovariateCounterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TableRecalibrationWalker</class>
<!-- Recalibration Covariates -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.DinucCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.PositionCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.MinimumNQSCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.MappingQualityCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.QualityScoreCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.PrimerRoundCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CycleCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.ReadGroupCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TileCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.HomopolymerCovariate</class>
<!-- Local realignment around indels -->
<class>org.broadinstitute.sting.gatk.walkers.indels.CleanedReadInjector</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalCleanerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalMergerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.MismatchIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.SNPClusterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperV2Walker</class>
<!-- Unified genotyper -->
<class>org.broadinstitute.sting.gatk.walkers.genotyper.UnifiedGenotyper</class>
<!-- Variant filtration -->
<class>org.broadinstitute.sting.gatk.walkers.filters.VariantFiltrationWalker</class>
<!-- Variant annotator -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.VariantAnnotator</class>
<!-- And the annotations -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.AlleleBalance</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.DepthOfCoverage</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.HomopolymerRun</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.RMSMappingQuality</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.SpanningDeletions</class>
</dependencies>
</executable>
<resources>

View File

@ -4,9 +4,14 @@
<executable>
<name>GenomeAnalysisTK</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<properties>StingText.properties</properties>
<module>QualityScoresRecalibrationModule.xml</module>
<module>LocalRealignmentAroundIndelsModule.xml</module>
<module>UnifiedGenotyperModule.xml</module>
<module>VariantFiltrationModule.xml</module>
<module>VariantAnnotatorModule.xml</module>
<module>VCFValidatorModule.xml</module>
<dependencies>
<!-- Text extracted from the javadocs -->
<properties>StingText.properties</properties>
<!-- Filters -->
<package>org.broadinstitute.sting.gatk.filters</package>
<!-- Basic qc walkers -->
@ -16,40 +21,6 @@
<class>org.broadinstitute.sting.gatk.walkers.qc.CountLociWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.qc.CountReadsWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.qc.ValidatingPileupWalker</class>
<!-- Quality scores recalibration -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CovariateCounterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TableRecalibrationWalker</class>
<!-- Recalibration Covariates -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.DinucCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.QualityScoreCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CycleCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.ReadGroupCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TileCovariate</class>
<!-- Local realignment around indels -->
<class>org.broadinstitute.sting.gatk.walkers.indels.CleanedReadInjector</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalCleanerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalMergerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.MismatchIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.SNPClusterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperV2Walker</class>
<!-- Unified genotyper -->
<class>org.broadinstitute.sting.gatk.walkers.genotyper.UnifiedGenotyper</class>
<!-- Variant filtration -->
<class>org.broadinstitute.sting.gatk.walkers.filters.VariantFiltrationWalker</class>
<!-- Variant annotator -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.VariantAnnotator</class>
<!-- And the annotations -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.AlleleBalance</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.DepthOfCoverage</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.HomopolymerRun</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.MappingQualityZero</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.QualByDepth</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.RMSMappingQuality</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.SpanningDeletions</class>
<!-- VCF validator -->
<class>org.broadinstitute.sting.gatk.walkers.qc.VCFValidator</class>
</dependencies>
</executable>
<executable>

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>LocalRealignmentAroundIndels</name>
<executable>
<name>LocalRealignmentAroundIndels</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<dependencies>
<!-- Local realignment around indels -->
<class>org.broadinstitute.sting.gatk.walkers.indels.CleanedReadInjector</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalCleanerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IntervalMergerWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.MismatchIntervalWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.SNPClusterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.indels.IndelGenotyperV2Walker</class>
</dependencies>
</executable>
</package>

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>QualityScoresRecalibration</name>
<executable>
<name>QualityScoresRecalibration</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<dependencies>
<!-- Quality scores recalibration -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CovariateCounterWalker</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TableRecalibrationWalker</class>
<!-- Recalibration Covariates -->
<class>org.broadinstitute.sting.gatk.walkers.recalibration.DinucCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.QualityScoreCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.CycleCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.ReadGroupCovariate</class>
<class>org.broadinstitute.sting.gatk.walkers.recalibration.TileCovariate</class>
</dependencies>
</executable>
</package>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>UnifiedGenotyper</name>
<executable>
<name>UnifiedGenotyper</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<dependencies>
<!-- Unified genotyper -->
<class>org.broadinstitute.sting.gatk.walkers.genotyper.UnifiedGenotyper</class>
</dependencies>
</executable>
</package>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>VCFValidator</name>
<executable>
<name>VCFValidator</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<dependencies>
<!-- VCF validator -->
<class>org.broadinstitute.sting.gatk.walkers.qc.VCFValidator</class>
</dependencies>
</executable>
</package>

View File

@ -0,0 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>VariantAnnotator</name>
<executable>
<name>VariantAnnotator</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<dependencies>
<!-- Variant annotator -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.VariantAnnotator</class>
<!-- And the annotations -->
<class>org.broadinstitute.sting.gatk.walkers.annotator.AlleleBalance</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.DepthOfCoverage</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.HomopolymerRun</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.MappingQualityZero</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.QualByDepth</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.RMSMappingQuality</class>
<class>org.broadinstitute.sting.gatk.walkers.annotator.SpanningDeletions</class>
</dependencies>
</executable>
</package>

View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<package>
<name>VariantFiltration</name>
<executable>
<name>VariantFiltration</name>
<main-class>org.broadinstitute.sting.gatk.CommandLineGATK</main-class>
<dependencies>
<!-- Variant filtration -->
<class>org.broadinstitute.sting.gatk.walkers.filters.VariantFiltrationWalker</class>
</dependencies>
</executable>
</package>