bcftools-merge is used to merge VCF files into a singe VCF.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.3KB

  1. task bcftools {
  2. File pon_vcf1
  3. File pon_vcf2
  4. File pon_vcf3
  5. String docker
  6. String cluster_config
  7. String disk_size
  8. Boolean PONmode
  9. command <<<
  10. set -o pipefail
  11. set -e
  12. if [ ${PONmode} ]; then
  13. #mkdir -p /cromwell_root/tmp/bcftools
  14. #bcftools view ${pon_vcf1} -Oz -o /cromwell_root/tmp/bcftools/$(basename ${pon_vcf1}.gz)
  15. #bcftools view ${pon_vcf2} -Oz -o /cromwell_root/tmp/bcftools/$(basename ${pon_vcf1}.gz)
  16. #bcftools view ${pon_vcf3} -Oz -o /cromwell_root/tmp/bcftools/$(basename ${pon_vcf1}.gz)
  17. #cd /cromwell_root/tmp/bcftools
  18. bcftools view ${pon_vcf1} -Oz -o $(basename ${pon_vcf1}.gz)
  19. bcftools view ${pon_vcf2} -Oz -o $(basename ${pon_vcf2}.gz)
  20. bcftools view ${pon_vcf2} -Oz -o $(basename ${pon_vcf3}.gz)
  21. #for i in `ls *.gz`; do bcftools index $i -f; done
  22. #bcftools merge -m all -f PASS,. --force-samples *.vcf.gz | bcftools plugin fill-AN-AC | bcftools filter -i 'SUM(AC)>1' > panel_of_normal.vcf
  23. else
  24. echo 1
  25. #touch panel_of_normal.vcf
  26. fi
  27. >>>
  28. runtime {
  29. docker: docker
  30. cluster: cluster_config
  31. systemDisk: "cloud_ssd 40"
  32. dataDisk: "cloud_ssd " + disk_size + " /cromwell_root/"
  33. }
  34. output {
  35. File vcf1="$(basename ${pon_vcf1}.gz)"
  36. File vcf2="$(basename ${pon_vcf2}.gz)"
  37. File vcf3="$(basename ${pon_vcf3}.gz)"
  38. #File panel_of_normal_vcf = "panel_of_normal.vcf"
  39. }
  40. }