Generate the Panel of Normal files for TNseq and TNscope.
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.

109 lines
2.7KB

  1. import "./tasks/mapping.wdl" as mapping
  2. import "./tasks/Dedup.wdl" as Dedup
  3. import "./tasks/Realigner.wdl" as Realigner
  4. import "./tasks/BQSR.wdl" as BQSR
  5. import "./tasks/PoN.wdl" as PoN
  6. workflow {{ project_name }} {
  7. String SENTIEON_INSTALL_DIR
  8. String SENTIEON_LICENSE
  9. String sample_id
  10. File? fastq_1
  11. File? fastq_2
  12. File? deduped_bam
  13. File? deduped_bam_index
  14. File regions
  15. File ref_dir
  16. String fasta
  17. File dbsnp_dir
  18. String dbsnp
  19. File dbmills_dir
  20. String db_mills
  21. String sentieon_docker
  22. String cluster_config
  23. String disk_size
  24. if (fastq_1!= "") {
  25. call mapping.mapping as mapping {
  26. input:
  27. group=sample_id,
  28. sample=sample_id,
  29. fastq_1=fastq_1,
  30. fastq_2=fastq_2,
  31. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  32. SENTIEON_LICENSE=SENTIEON_LICENSE,
  33. pl="ILLUMINAL",
  34. fasta=fasta,
  35. ref_dir=ref_dir,
  36. docker=sentieon_docker,
  37. disk_size=disk_size,
  38. cluster_config=cluster_config
  39. }
  40. call Dedup.Dedup as Dedup {
  41. input:
  42. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  43. SENTIEON_LICENSE=SENTIEON_LICENSE,
  44. sorted_bam=mapping.sorted_bam,
  45. sorted_bam_index=mapping.sorted_bam_index,
  46. sample=sample_id,
  47. docker=sentieon_docker,
  48. disk_size=disk_size,
  49. cluster_config=cluster_config
  50. }
  51. File deduped_bam=Dedup.deduped_bam
  52. File deduped_bam_index=Dedup.deduped_bam_index
  53. }
  54. if (deduped_bam!= "") {
  55. call Realigner.Realigner as Realigner {
  56. input:
  57. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  58. SENTIEON_LICENSE=SENTIEON_LICENSE,
  59. fasta=fasta,
  60. ref_dir=ref_dir,
  61. deduped_bam=deduped_bam,
  62. deduped_bam_index=deduped_bam_index,
  63. db_mills=db_mills,
  64. dbmills_dir=dbmills_dir,
  65. docker=sentieon_docker,
  66. disk_size=disk_size,
  67. cluster_config=cluster_config
  68. }
  69. call BQSR.BQSR as BQSR {
  70. input:
  71. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  72. SENTIEON_LICENSE=SENTIEON_LICENSE,
  73. fasta=fasta,
  74. ref_dir=ref_dir,
  75. realigned_bam=Realigner.realigner_bam,
  76. realigned_bam_index=Realigner.realigner_bam_index,
  77. db_mills=db_mills,
  78. dbmills_dir=dbmills_dir,
  79. dbsnp=dbsnp,
  80. dbsnp_dir=dbsnp_dir,
  81. docker=sentieon_docker,
  82. disk_size=disk_size,
  83. cluster_config=cluster_config
  84. }
  85. call PoN.PoN as PoN {
  86. input:
  87. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  88. SENTIEON_LICENSE=SENTIEON_LICENSE,
  89. fasta=fasta,
  90. ref_dir=ref_dir,
  91. regions=regions,
  92. normal_bam=BQSR.recaled_bam,
  93. normal_bam_index=BQSR.recaled_bam_index,
  94. docker=sentieon_docker,
  95. disk_size=disk_size,
  96. cluster_config=cluster_config
  97. }
  98. }
  99. }