stdout: $(inputs.vcf.nameroot).txt
+inputs:
+ vcf:
+ type: File
+ clinvarvcf:
+ type: File
+
+outputs:
+ reporttxt: stdout
+
arguments:
- bcftools
- annotate
- filter
- prefix: "-i"
valueFrom: "INFO/ALLELEID>=1"
-
-inputs:
- vcf:
- type: File
- clinvarvcf:
- type: File
-
-outputs:
- report: stdout
+ - {valueFrom: '|', shellQuote: false}
+ - bcftools
+ - query
+ - prefix: "-f"
+ valueFrom: "%ID\t%CHROM\t%POS\t%REF\t%ALT\t%INFO/ALLELEID\t%INFO/CLNSIG\t%INFO/CLNDN\t%INFO/AF_ESP\t%INFO/AF_EXAC\t%INFO/AF_TGP[\t%GT]\n"
outputSource: fastqc/out-zip
vcf:
type: File
- outputSource: vep/out-vcf
+ outputSource: haplotypecaller/vcf
steps:
fastqc:
cwlVersion: v1.1
class: CommandLineTool
+label: Realigning fastqs and converting output to bam
requirements:
DockerRequirement:
ramMin: 26000
coresMin: 8
-arguments:
- - /bwa-0.7.17/bwa
- - mem
- - -t
- - $(runtime.cores)
- - $(inputs.reference)
- - -R
- - "@RG\\tID:sample\\tSM:sample\\tLB:sample\\tPL:ILLUMINA"
- - $(inputs.fastq1)
- - $(inputs.fastq2)
- - shellQuote: false
- valueFrom: '|'
- - samtools
- - view
- - -b
- - -S
- - shellQuote: false
- valueFrom: '-'
-
inputs:
reference:
type: File
type: File
outputBinding:
glob: "*bam"
+
+arguments:
+ - /bwa-0.7.17/bwa
+ - mem
+ - -t
+ - $(runtime.cores)
+ - $(inputs.reference)
+ - -R
+ - "@RG\\tID:sample\\tSM:sample\\tLB:sample\\tPL:ILLUMINA"
+ - $(inputs.fastq1)
+ - $(inputs.fastq2)
+ - shellQuote: false
+ valueFrom: '|'
+ - samtools
+ - view
+ - -b
+ - -S
+ - shellQuote: false
+ valueFrom: '-'
cwlVersion: v1.1
class: CommandLineTool
+label: Quality check on fastq data using FastQC
requirements:
DockerRequirement:
- $(inputs.fastq1)
- $(inputs.fastq2)
-arguments:
- - perl
- - /FastQC/fastqc
- - $(inputs.fastq1.basename)
- - $(inputs.fastq2.basename)
-
inputs:
fastq1: File
fastq2: File
type: File[]
outputBinding:
glob: "*fastqc.zip"
+
+basecommand: perl
+arguments:
+ - /FastQC/fastqc
+ - $(inputs.fastq1.basename)
+ - $(inputs.fastq2.basename)
cwlVersion: v1.1
class: CommandLineTool
+label: Germline variant calling using GATK with output gvcf
requirements:
DockerRequirement:
ramMin: 10000
coresMin: 4
-arguments:
- - java
- - -jar
- - /gatk/gatk.jar
- - HaplotypeCaller
- - -R
- - $(inputs.reference)
- - -I
- - $(inputs.bam)
- - -O
- - $(runtime.outdir)/$(inputs.sample).gatk.vcf
-
inputs:
bam:
type: File
type: File
outputBinding:
glob: "*vcf"
+
+arguments:
+ - java
+ - -jar
+ - /gatk/gatk.jar
+ - HaplotypeCaller
+ - -R
+ - $(inputs.reference)
+ - -I
+ - $(inputs.bam)
+ - -O
+ - $(runtime.outdir)/$(inputs.sample).gatk.g.vcf
+ - -ERC
+ - "GVCF"
ramMin: 10000
coresMin: 4
-baseCommand: python
-
-arguments:
- - $(inputs.reportfunc)
- - $(inputs.sampletxt)
- - $(inputs.sampletxt.basename)
- - $(inputs.headhtml)
- - $(inputs.tailhtml)
-
inputs:
reportfunc:
type: File
type: File
tailhtml:
type: File
-
+
outputs:
report:
type: File
outputBinding:
glob: "*html"
+
+baseCommand: python
+
+arguments:
+ - $(inputs.reportfunc)
+ - $(inputs.sampletxt)
+ - $(inputs.sampletxt.basename)
+ - $(inputs.headhtml)
+ - $(inputs.tailhtml)
--- /dev/null
+cwlVersion: v1.1
+class: Workflow
+
+inputs:
+ vcf:
+ type: File
+ clinvarvcf:
+ type: File
+ reportfunc:
+ type: File
+ headhtml:
+ type: File
+ tailhtml:
+ type: File
+
+outputs:
+ report:
+ type: File
+ outputSource: generate-report/report
+
+steps:
+ annotate:
+ run: annotate-vcf.cwl
+ in:
+ vcf: vcf
+ clinvarvcf: clinvarvcf
+ out: [reporttxt]
+
+ generate-report:
+ run: generate-report.cwl
+ in:
+ reportfunc: reportfunc
+ sampletxt: annotate/reporttxt
+ headhtml: headhtml
+ tailhtml: tailhtml
+ out: [report]
listing:
- $(inputs.bam)
-arguments:
- - samtools
- - index
- - $(inputs.bam.basename)
-
inputs:
bam: File
secondaryFiles:
- .bai
+runcommand: samtools
+
+arguments:
+ - index
+ - $(inputs.bam.basename)
ramMin: 10000
coresMin: 4
-arguments:
- - samtools
- - sort
- - -t
- - $(runtime.cores)
- - $(inputs.bam)
- - -o
- - $(runtime.outdir)/$(inputs.sample).sorted.bam
-
inputs:
bam: File
sample: string
out:
type: File
outputBinding:
- glob: "*sorted.bam"
+ glob: "*sorted.bam
+
+runcommand: samtools
+
+arguments:
+ - sort
+ - -t
+ - $(runtime.cores)
+ - $(inputs.bam)
+ - -o
+ - $(runtime.outdir)/$(inputs.sample).sorted.bam