import "./tasks/TrimAdapt.wdl" as TrimAdapt import "./tasks/ReadFilter.wdl" as ReadFilter import "./tasks/Align.wdl" as Align import "./tasks/Quantification.wdl" as Quantification import "./tasks/ReadStats.wdl" as ReadStats workflow {{ project_name }} { String sample_ID File raw_fastq String docker_fastp String docker_bowtie String cluster_config String disk_size String adapter_seq Int randomBase_in_adapter Int qualified_quality_phred Int unqualified_percent_limit Int n_base_limit Int length_required File dir_index_mature String prefix_index_mature Int sum_unmatch_quality_limit call TrimAdapt.TrimAdapt as TrimAdapt { input: sample_ID=sample_ID,in_fastq=raw_fastq, adapter_seq=adapter_seq, randomBase_in_adapter=randomBase_in_adapter, docker=docker_fastp, cluster_config=cluster_config, disk_size=disk_size } call ReadFilter.ReadFilter as ReadFilter { input: sample_ID=sample_ID, in_fastq=TrimAdapt.out_fastq, qualified_quality_phred=qualified_quality_phred,unqualified_percent_limit=unqualified_percent_limit, n_base_limit=n_base_limit, length_required=length_required, docker=docker_fastp, cluster_config=cluster_config, disk_size=disk_size } call Align.Align as Align2Mature { input: sample_ID=sample_ID, in_fastq=ReadFilter.out_fastq, dir_index=dir_index_mature,prefix_index=prefix_index_mature, sum_unmatch_quality_limit=sum_unmatch_quality_limit, docker=docker_bowtie, cluster_config=cluster_config, disk_size=disk_size } call Quantification.Quantification as Quantification{ input: sample_ID=sample_ID, in_sam=Align2Mature.out_sam, cluster_config=cluster_config, disk_size=disk_size } call ReadStats.ReadStats as ReadStats { input: sample_ID=sample_ID, in_log_trimAdatper=TrimAdapt.out_log, in_log_readFilter=ReadFilter.out_log, in_log_align_mature=Align2Mature.out_log, cluster_config=cluster_config, disk_size=disk_size } }