Nie możesz wybrać więcej, niż 25 tematów Tematy muszą się zaczynać od litery lub cyfry, mogą zawierać myślniki ('-') i mogą mieć do 35 znaków.

160 lines
3.9KB

  1. import "./tasks/TNseq.wdl" as TNseq
  2. import "./tasks/TNseqold.wdl" as TNseqold
  3. import "./tasks/TNscope.wdl" as TNscope
  4. import "./tasks/annovar.wdl" as annovar
  5. workflow {{ project_name }} {
  6. String sample_id
  7. File tumor_bam
  8. File tumor_bai
  9. File tumor_table
  10. File normal_bam
  11. File normal_bai
  12. File normal_table
  13. String SENTIEON_INSTALL_DIR
  14. String SENTIEON_LICENSE
  15. String sentieon_docker
  16. String varscan_docker
  17. String annovar_docker
  18. String maftools_docker
  19. File ref_dir
  20. String fasta
  21. File dbmills_dir
  22. String db_mills
  23. File dbsnp_dir
  24. String dbsnp
  25. File germline_resource
  26. File germline_resource_tbi
  27. File? regions
  28. Int? interval_padding
  29. File database
  30. String disk_size
  31. String cluster_config
  32. File? tnseq_pon
  33. File? tnscope_pon
  34. File? cosmic_dir
  35. String? cosmic_vcf
  36. Boolean germline
  37. Boolean tnseq
  38. Boolean tnseqold
  39. Boolean tnscope
  40. Boolean varscan
  41. if (tnseqold) {
  42. call TNseqold.TNseqold as TNseqold {
  43. input:
  44. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  45. SENTIEON_LICENSE=SENTIEON_LICENSE,
  46. sample=sample_id,
  47. normal_recaled_bam=normal_bam,
  48. normal_recaled_bam_index=normal_bai,
  49. normal_recal_table=normal_table,
  50. tumor_recaled_bam=tumor_bam,
  51. tumor_recaled_bam_index=tumor_bai,
  52. tumor_recal_table=tumor_table,
  53. normal_name=sample_id + "_normal",
  54. tumor_name=sample_id + "_tumor",
  55. fasta=fasta,
  56. ref_dir=ref_dir,
  57. regions=regions,
  58. dbsnp=dbsnp,
  59. dbsnp_dir=dbsnp_dir,
  60. interval_padding=interval_padding,
  61. pon_vcf=tnseq_pon,
  62. docker=sentieon_docker,
  63. cluster_config=cluster_config,
  64. disk_size=disk_size
  65. }
  66. call annovar.annovar as TNseqold_annovar {
  67. input:
  68. sample=sample_id,
  69. vcf=TNseqold.TNseq_vcf,
  70. database=database,
  71. docker=annovar_docker,
  72. cluster_config=cluster_config,
  73. disk_size=disk_size
  74. }
  75. }
  76. if (tnseq) {
  77. call TNseq.TNseq as TNseq {
  78. input:
  79. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  80. SENTIEON_LICENSE=SENTIEON_LICENSE,
  81. sample=sample_id,
  82. normal_recaled_bam=normal_bam,
  83. normal_recaled_bam_index=normal_bai,
  84. normal_recal_table=normal_table,
  85. tumor_recaled_bam=tumor_bam,
  86. tumor_recaled_bam_index=tumor_bai,
  87. tumor_recal_table=tumor_table,
  88. normal_name=sample_id + "_normal",
  89. tumor_name=sample_id + "_tumor",
  90. fasta=fasta,
  91. ref_dir=ref_dir,
  92. regions=regions,
  93. interval_padding=interval_padding,
  94. germline_resource=germline_resource,
  95. germline_resource_tbi=germline_resource_tbi,
  96. pon_vcf=tnseq_pon,
  97. docker=sentieon_docker,
  98. cluster_config=cluster_config,
  99. disk_size=disk_size
  100. }
  101. call annovar.annovar as TNseq_annovar {
  102. input:
  103. sample=sample_id,
  104. vcf=TNseq.TNseq_vcf,
  105. database=database,
  106. docker=annovar_docker,
  107. cluster_config=cluster_config,
  108. disk_size=disk_size
  109. }
  110. }
  111. if (tnscope) {
  112. call TNscope.TNscope as TNscope {
  113. input:
  114. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  115. SENTIEON_LICENSE=SENTIEON_LICENSE,
  116. sample=sample_id,
  117. normal_recaled_bam=normal_bam,
  118. normal_recaled_bam_index=normal_bai,
  119. normal_recal_table=normal_table,
  120. tumor_recaled_bam=tumor_bam,
  121. tumor_recaled_bam_index=tumor_bai,
  122. tumor_recal_table=tumor_table,
  123. normal_name=sample_id + "_normal",
  124. tumor_name=sample_id + "_tumor",
  125. fasta=fasta,
  126. ref_dir=ref_dir,
  127. regions=regions,
  128. interval_padding=interval_padding,
  129. dbsnp=dbsnp,
  130. dbsnp_dir=dbsnp_dir,
  131. pon_vcf=tnscope_pon,
  132. docker=sentieon_docker,
  133. cluster_config=cluster_config,
  134. disk_size=disk_size
  135. }
  136. call annovar.annovar as TNscope_annovar {
  137. input:
  138. sample=sample_id,
  139. vcf=TNscope.TNscope_vcf,
  140. database=database,
  141. docker=annovar_docker,
  142. cluster_config=cluster_config,
  143. disk_size=disk_size
  144. }
  145. }
  146. }