+++ /dev/null
-$namespaces:
- arv: "http://arvados.org/cwl#"
- cwltool: "http://commonwl.org/cwltool#"
-class: ExpressionTool
-cwlVersion: v1.1
-label: Create array of gvcfs to process
-requirements:
- InlineJavascriptRequirement: {}
-inputs:
- fastjdir:
- type: Directory
- label: Input directory of fastj
- loadListing: 'shallow_listing'
-outputs:
- fastq1:
- type: File[]
- fastq2:
- type: File[]
-expression: |
- ${function compare(a, b) {
- var baseA = a.basename;
- var baseB = b.basename;
-
- var comparison = 0;
- if (baseA > baseB) {
- comparison = 1;
- } else if (baseA < baseB) {
- comparison = -1;
- }
- return comparison;
- }
-
- var fastq1 = [];
- var fastq2 = [];
- for (var i = 0; i < inputs.fastjdir.listing.length; i++) {
- var name = inputs.fastjdir.listing[i];
- if (name.basename.indexOf('_1.fastq.gz') != -1 ) {
- fastq1.push(name);
- }
- if (name.basename.indexOf('_2.fastq.gz') != -1 ) {
- fastq2.push(name);
- }
- }
-
- fastq1 = fastq1.sort(compare)
- fastq2 = fastq2.sort(compare)
-
- return {"fastq1": fastq1, "fastq2": fastq2};
- }
requirements:
- class: SubworkflowFeatureRequirement
+ - class: ScatterFeatureRequirement
inputs:
- fastq1: File
- fastq2: File
+ fastqdir: Directory
reference:
type: File
secondaryFiles:
tailhtml: File
outputs:
- qc-html:
- type: File[]
- outputSource: fastqc/out-html
- qc-zip:
- type: File[]
- outputSource: fastqc/out-zip
gvcf:
- type: File
- outputSource: haplotypecaller/gatheredgvcf
+ type: File[]
+ outputSource: bwamem-gatk-report/gvcf
report:
- type: File
- outputSource: generate-report/report
+ type: File[]
+ outputSource: bwamem-gatk-report/report
+
steps:
- fastqc:
- run: fastqc.cwl
- in:
- fastq1: fastq1
- fastq2: fastq2
- out: [out-html, out-zip]
- bwamem-samtools-view:
- run: bwamem-samtools-view.cwl
- in:
- fastq1: fastq1
- fastq2: fastq2
- reference: reference
- sample: sample
- out: [bam]
- samtools-sort:
- run: samtools-sort.cwl
- in:
- bam: bwamem-samtools-view/bam
- sample: sample
- out: [sortedbam]
- mark-duplicates:
- run: mark-duplicates.cwl
+ getfastq:
+ run: ./helper/getfastq.cwl
in:
- bam: samtools-sort/sortedbam
- out: [dupbam,dupmetrics]
- samtools-index:
- run: samtools-index.cwl
- in:
- bam: mark-duplicates/dupbam
- out: [indexedbam]
- haplotypecaller:
- run: scatter-gatk-wf-with-interval.cwl
+ fastqdir: fastqdir
+ out: [fastq1, fastq2]
+
+ bwamem-gatk-report:
+ run: ./helper/bwamem-gatk-report-wf.cwl
+ scatter: [fastq1, fastq2]
+ scatterMethod: dotproduct
in:
+ fastq1: getfastq/fastq1
+ fastq2: getfastq/fastq2
reference: reference
- bam: samtools-index/indexedbam
sample: sample
+ knownsites: knownsites
scattercount: scattercount
- knownsites1: knownsites
- out: [gatheredgvcf]
- generate-report:
- run: report-wf.cwl
- in:
- gvcf: haplotypecaller/gatheredgvcf
- samplename: sample
clinvarvcf: clinvarvcf
reportfunc: reportfunc
headhtml: headhtml
tailhtml: tailhtml
- out: [report]
+ out: [qc-html,qc-zip,gvcf,report]