|
- import "./tasks/fastp.wdl" as fastp
- import "./tasks/hisat2.wdl" as hisat2
- import "./tasks/samtools.wdl" as samtools
- import "./tasks/stringtie.wdl" as stringtie
- import "./tasks/fastqc.wdl" as fastqc
- import "./tasks/fastqscreen.wdl" as fastqscreen
- import "./tasks/qualimapBAMqc.wdl" as qualimapBAMqc
- import "./tasks/multiqc.wdl" as multiqc
-
- workflow {{ project_name }} {
-
- File inputSamplesFile
- Array[Array[File]] inputSamples = read_tsv(inputSamplesFile)
-
- String fasta
- String idx_prefix
- File screen_ref_dir
- File fastq_screen_conf
- File idx
- File gtf
- File ref_dir
-
-
- scatter (quartet in inputSamples){
-
- call fastp.fastp as fastp {
- input:
- sample_id=quartet[2],
- read1=quartet[0],
- read2=quartet[1],
- adapter_sequence=quartet[3],
- adapter_sequence_r2=quartet[4]
- }
-
- call fastqc.fastqc as fastqc {
- input:
- read1=fastp.Trim_R1,
- read2=fastp.Trim_R2
- }
-
- call fastqscreen.fastq_screen as fastqscreen {
- input:
- read1=fastp.Trim_R1,
- read2=fastp.Trim_R2,
- screen_ref_dir=screen_ref_dir,
- fastq_screen_conf=fastq_screen_conf
- }
-
- call hisat2.hisat2 as hisat2 {
- input:
- sample_id=quartet[2],
- idx=idx,
- idx_prefix=idx_prefix,
- Trim_R1=fastp.Trim_R1,
- Trim_R2=fastp.Trim_R2
- }
-
- call samtools.samtools as samtools {
- input:
- sample_id=quartet[2],
- sam = hisat2.sam
- }
-
- call qualimapBAMqc.qualimapBAMqc as qualimapBAMqc {
- input:
- bam= samtools.out_bam
- }
-
-
- call stringtie.stringtie as stringtie {
- input:
- sample_id = quartet[2],
- gtf = gtf,
- bam = samtools.out_bam
- }
- }
-
-
- call multiqc.multiqc as multiqc {
- input:
- read1_zip = fastqc.read1_zip,
- read2_zip = fastqc.read2_zip,
- txt1 = fastqscreen.txt1,
- txt2 = fastqscreen.txt2,
- bamqc_zip = qualimapBAMqc.bamqc_zip
- }
- }
|