task fastp { String sample_id File read1 File read2 String adapter_sequence String adapter_sequence_r2 String docker String cluster String disk_size String umi_loc String trim_adapter Int trim_front1 Int trim_tail1 Int max_len1 Int trim_front2 Int trim_tail2 Int max_len2 Int length_required Int umi_len Int qualified_quality_phred Int length_required1 command <<< nt=$(nproc) ## Trim if [ "${trim_adapter}" != 'true' ]; then cp ${read1} ${sample_id}_R1.fq.gz cp ${read2} ${sample_id}_R2.fq.gz else fastp --thread $nt -l ${length_required} -q ${qualified_quality_phred} -u ${length_required1} --adapter_sequence ${adapter_sequence} --adapter_sequence_r2 ${adapter_sequence_r2} --detect_adapter_for_pe --trim_front1 ${trim_front1} --trim_tail1 ${trim_tail1} --max_len1 ${max_len1} --trim_front2 ${trim_front2} --trim_tail2 ${trim_tail2} --max_len2 ${max_len2} -i ${read1} -I ${read2} -o ${sample_id}_R1.fq.gz -O ${sample_id}_R2.fq.gz -j ${sample_id}.json -h ${sample_id}.html fi >>> runtime { docker: docker cluster: cluster systemDisk: "cloud_ssd 40" dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/" } output { File json = "${sample_id}.json" File report = "${sample_id}.html" File trim_R1 = "${sample_id}_R1.fq.gz" File trim_R2 = "${sample_id}_R2.fq.gz" } }