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.

122 lines
3.0KB

  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 fastq_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 fastq_Dedup {
  41. input:
  42. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  43. SENTIEON_LICENSE=SENTIEON_LICENSE,
  44. sorted_bam=fastq_mapping.sorted_bam,
  45. sorted_bam_index=fastq_mapping.sorted_bam_index,
  46. sample=sample_id,
  47. docker=sentieon_docker,
  48. disk_size=disk_size,
  49. cluster_config=cluster_config
  50. }
  51. call BQSR.BQSR as fastq_BQSR {
  52. input:
  53. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  54. SENTIEON_LICENSE=SENTIEON_LICENSE,
  55. fasta=fasta,
  56. ref_dir=ref_dir,
  57. deduped_bam=fastq_Dedup.deduped_bam,
  58. deduped_bam_index=fastq_Dedup.deduped_bam_index,
  59. db_mills=db_mills,
  60. dbmills_dir=dbmills_dir,
  61. dbsnp=dbsnp,
  62. dbsnp_dir=dbsnp_dir,
  63. docker=sentieon_docker,
  64. disk_size=disk_size,
  65. cluster_config=cluster_config
  66. }
  67. call PoN.PoN as fastq_PoN {
  68. input:
  69. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  70. SENTIEON_LICENSE=SENTIEON_LICENSE,
  71. fasta=fasta,
  72. ref_dir=ref_dir,
  73. regions=regions,
  74. normal_bam=fastq_BQSR.recaled_bam,
  75. normal_bam_index=fastq_BQSR.recaled_bam_index,
  76. docker=sentieon_docker,
  77. disk_size=disk_size,
  78. cluster_config=cluster_config
  79. }
  80. }
  81. if (deduped_bam!= "") {
  82. call BQSR.BQSR as bam_BQSR {
  83. input:
  84. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  85. SENTIEON_LICENSE=SENTIEON_LICENSE,
  86. fasta=fasta,
  87. ref_dir=ref_dir,
  88. deduped_bam=deduped_bam,
  89. deduped_bam_index=deduped_bam_index,
  90. db_mills=db_mills,
  91. dbmills_dir=dbmills_dir,
  92. dbsnp=dbsnp,
  93. dbsnp_dir=dbsnp_dir,
  94. docker=sentieon_docker,
  95. disk_size=disk_size,
  96. cluster_config=cluster_config
  97. }
  98. call PoN.PoN as bam_PoN {
  99. input:
  100. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  101. SENTIEON_LICENSE=SENTIEON_LICENSE,
  102. fasta=fasta,
  103. ref_dir=ref_dir,
  104. regions=regions,
  105. normal_bam=bam_BQSR.recaled_bam,
  106. normal_bam_index=bam_BQSR.recaled_bam_index,
  107. docker=sentieon_docker,
  108. disk_size=disk_size,
  109. cluster_config=cluster_config
  110. }
  111. }
  112. }