63 lines
1.7 KiB
Plaintext
63 lines
1.7 KiB
Plaintext
task runqc {
|
|
String name
|
|
String inputDir
|
|
String outputDir
|
|
|
|
command <<<
|
|
echo "###### ${name} fastp beginning at: $(date) ######"
|
|
|
|
if [ ! -d ${outputDir}/qc ];then
|
|
mkdir ${outputDir}/qc
|
|
fi
|
|
|
|
fastp -i ${inputDir}/*_$name_*1.fq.gz -o ${outputDir}/qc/${name}_clean_R1.fq.gz \
|
|
-I ${inputDir}/*_$name_*2.fq.gz -O ${outputDir}/qc/${name}_clean_R2.fq.gz \
|
|
-w 10 \
|
|
--correction \
|
|
--overlap_len_require 10 \
|
|
-j ${outputDir}/qc/${name}.json \
|
|
-h ${outputDir}/qc/${name}.html \
|
|
--report_title $name \
|
|
-e 20
|
|
|
|
echo "###### ${name} fastp end at: $(date) ######"
|
|
>>>
|
|
output {
|
|
String r1 = "${outputDir}/qc/${name}_clean_R1.fq.gz "
|
|
String r2 = "${outputDir}/qc/${name}_clean_R2.fq.gz "
|
|
String json = "${outputDir}/qc/${name}.json"
|
|
}
|
|
|
|
}
|
|
|
|
workflow qc {
|
|
|
|
String tumor
|
|
String? normal
|
|
String inputDir
|
|
String outputDir
|
|
|
|
scatter(name in [tumor, normal]) {
|
|
if (defined(name)) {
|
|
call runqc {
|
|
input:
|
|
name=name,
|
|
inputDir=inputDir,
|
|
outputDir=outputDir
|
|
}
|
|
}
|
|
}
|
|
|
|
output {
|
|
String tumor_r1 = "${outputDir}/qc/${tumor}_clean_R1.fq.gz "
|
|
String tumor_r2 = "${outputDir}/qc/${tumor}_clean_R2.fq.gz "
|
|
String tumor_json = "${outputDir}/qc/${tumor}.json"
|
|
String normal_r1 = "${outputDir}/qc/${normal}_clean_R1.fq.gz "
|
|
String normal_r2 = "${outputDir}/qc/${normal}_clean_R2.fq.gz "
|
|
String normal_json = "${outputDir}/qc/${normal}.json"
|
|
}
|
|
}
|
|
|
|
|
|
|