{ | |||||
"{{ project_name }}.cluster_config": "OnDemand bcs.a2.large img-ubuntu-vpc", | |||||
"{{ project_name }}.ref_dir": "oss://pgx-reference-data/fastq_screen_reference/", | |||||
"{{ project_name }}.fastq_screen_conf": "oss://pgx-reference-data/fastq_screen_reference/fastq_screen.conf", | |||||
"{{ project_name }}.read": "{{ read }}", | |||||
"{{ project_name }}.disk_size": "100", | |||||
"{{ project_name }}.docker": "registry.cn-shanghai.aliyuncs.com/pgx-docker-registry/fastqscreen:0.12.0" | |||||
} |
task fastq_screen { | |||||
File read | |||||
File ref_dir | |||||
File fastq_screen_conf | |||||
String docker | |||||
String cluster_config | |||||
String disk_size | |||||
command <<< | |||||
set -o pipefail | |||||
set -e | |||||
nt=$(nproc) | |||||
mkdir -p /cromwell_root/tmp | |||||
cp -r ${ref_dir} /cromwell_root/tmp/ | |||||
fastq_screen --aligner bowtie2 --conf ${fastq_screen_conf} --threads $nt --outdir ./ ${read} | |||||
>>> | |||||
runtime { | |||||
docker:docker | |||||
cluster: cluster_config | |||||
systemDisk: "cloud_ssd 40" | |||||
dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/" | |||||
} | |||||
output { | |||||
File png = sub(basename(read), "\\.(fastq|fq)\\.gz$", "_screen.html") | |||||
File txt = sub(basename(read), "\\.(fastq|fq)\\.gz$", "_screen.png") | |||||
File html = sub(basename(read), "\\.(fastq|fq)\\.gz$", "_screen.txt") | |||||
} | |||||
} |
import "./tasks/fastq_screen.wdl" as fastq_screen | |||||
workflow {{ project_name }} { | |||||
File read | |||||
File ref_dir | |||||
File fastq_screen_conf | |||||
String docker | |||||
String cluster_config | |||||
String disk_size | |||||
call fastq_screen.fastq_screen as fastq_screen { | |||||
input: | |||||
read=read, | |||||
ref_dir=ref_dir, | |||||
fastq_screen_conf=fastq_screen_conf, | |||||
docker=docker, | |||||
disk_size=disk_size, | |||||
cluster_config=cluster_config | |||||
} | |||||
} |