oss://choppy-cromwell-result/test-choppy/iseq_150pe_rnaseq_20200221_wangshangzi/43061775-40e6-47e7-8f07-b961b44c596f/call-samtools/GCCACATA_S9_L001_R1_001.sorted.bam oss://choppy-cromwell-result/test-choppy/iseq_150pe_rnaseq_20200221_wangshangzi/43061775-40e6-47e7-8f07-b961b44c596f/call-samtools/GCCACATA_S9_L001_R1_001.sorted.bam.bai | |||||
oss://choppy-cromwell-result/test-choppy/iseq_150pe_rnaseq_20200221_wangshangzi/49bd025e-5275-4fbd-9e67-b279b08ce8b5/call-samtools/F1_S6_L001_R1_001.sorted.bam oss://choppy-cromwell-result/test-choppy/iseq_150pe_rnaseq_20200221_wangshangzi/49bd025e-5275-4fbd-9e67-b279b08ce8b5/call-samtools/F1_S6_L001_R1_001.sorted.bam.bai | |||||
oss://choppy-cromwell-result/test-choppy/iseq_150pe_rnaseq_20200221_wangshangzi/43061775-40e6-47e7-8f07-b961b44c596f/call-samtools/GCCACATA_S9_L001_R1_001.sorted.bam | |||||
oss://choppy-cromwell-result/test-choppy/iseq_150pe_rnaseq_20200221_wangshangzi/49bd025e-5275-4fbd-9e67-b279b08ce8b5/call-samtools/F1_S6_L001_R1_001.sorted.bam |
"{{ project_name }}.bed_file": "oss://pgx-reference-data/reference/bedtools/ERVmap_v2_all_sorted.bed", | "{{ project_name }}.bed_file": "oss://pgx-reference-data/reference/bedtools/ERVmap_v2_all_sorted.bed", | ||||
"{{ project_name }}.bedtools.cluster_config": "OnDemand bcs.b2.3xlarge img-ubuntu-vpc", | "{{ project_name }}.bedtools.cluster_config": "OnDemand bcs.b2.3xlarge img-ubuntu-vpc", | ||||
"{{ project_name }}.bedtools.docker": "registry.cn-shanghai.aliyuncs.com/pgx-docker-registry/bedtools:v2.27.1", | "{{ project_name }}.bedtools.docker": "registry.cn-shanghai.aliyuncs.com/pgx-docker-registry/bedtools:v2.27.1", | ||||
"{{ project_name }}.bedtools.disk_size": "{{disk_size}}", | |||||
"{{ project_name }}.cp_bam.cluster_config": "OnDemand bcs.b2.3xlarge img-ubuntu-vpc", | |||||
"{{ project_name }}.cp_bam.disk_size": "{{disk_size}}" | |||||
"{{ project_name }}.bedtools.disk_size": "{{disk_size}}" | |||||
} | } |
task bedtools { | task bedtools { | ||||
Array[File] tmp_bam | |||||
Array[File] input_samples | |||||
File bed_file | File bed_file | ||||
String docker | String docker | ||||
command <<< | command <<< | ||||
set -e -o pipefail | set -e -o pipefail | ||||
cat ~{sep=" " tmp_bam}|bedtools multicov -bed ${bed_file} > revread_count.txt | |||||
cat ~{sep=" " input_samples}|bedtools multicov -bed ${bed_file} > revread_count.txt | |||||
>>> | >>> | ||||
task cp_bam { | |||||
File bam | |||||
String bamname = basename(bam,".bam") | |||||
String cluster_config | |||||
String disk_size | |||||
command <<< | |||||
set -e -o pipefail | |||||
cp ${bam} ${bamname}_tmp.bam | |||||
>>> | |||||
runtime { | |||||
cluster:cluster_config | |||||
systemDisk:"cloud_ssd 40" | |||||
dataDisk:"cloud_ssd " + disk_size + " /cromwell_root/" | |||||
} | |||||
output { | |||||
File tmp_bam = "${bamname}_tmp.bam" | |||||
} | |||||
} |
import "./tasks/cp_bam.wdl" as cp_bam | |||||
import "./tasks/bedtools.wdl" as bedtools | import "./tasks/bedtools.wdl" as bedtools | ||||
workflow {{ project_name }} { | workflow {{ project_name }} { | ||||
File input_samples_file | File input_samples_file | ||||
File bed_file | File bed_file | ||||
Array[Array[File]] input_samples = read_tsv(input_samples_file) | Array[Array[File]] input_samples = read_tsv(input_samples_file) | ||||
scatter (sample in input_samples) { | |||||
call cp_bam.cp_bam as cp_bam { | |||||
input: | |||||
bam=sample[0] | |||||
} | |||||
} | |||||
call bedtools.bedtools as bedtools { | call bedtools.bedtools as bedtools { | ||||
input: | input: | ||||
tmp_bam=cp_bam.tmp_bam, | |||||
input_samples=input_samples, | |||||
bed_file=bed_file | bed_file=bed_file | ||||
} | } | ||||
} | } | ||||