選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。

139 行
3.1KB

  1. import "./tasks/PON.wdl" as PON
  2. import "./tasks/bcftools.wdl" as bcftools
  3. import "./tasks/TNseq.wdl" as TNseq
  4. import "./tasks/TNscope.wdl" as TNscope
  5. import "./tasks/annovar.wdl" as annovar
  6. import "./tasks/vcf2maf.wdl" as vcf2maf
  7. workflow {{ project_name }} {
  8. File normal_recaled_bam
  9. File normal_recaled_bam_index
  10. File corealigner_bam
  11. File corealigner_bam_index
  12. String SENTIEON_INSTALL_DIR
  13. String SENTIEON_LICENSE
  14. String sample
  15. String sentieon_docker
  16. String annovar_docker
  17. String vcf2maf_r_docker
  18. String bcftools_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 regions
  26. File database
  27. String disk_size
  28. String cluster_config
  29. Boolean PONmode
  30. File? cosmic_dir
  31. String? cosmic_vcf
  32. Boolean set_annovar
  33. Boolean set_vcf2maf
  34. if (PONmode) {
  35. call PON.PON as PON {
  36. input:
  37. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  38. SENTIEON_LICENSE=SENTIEON_LICENSE,
  39. sample=sample,
  40. fasta=fasta,
  41. ref_dir=ref_dir,
  42. normal_recaled_bam=normal_recaled_bam,
  43. normal_recaled_bam_index=normal_recaled_bam_index,
  44. cosmic_vcf=cosmic_vcf,
  45. cosmic_dir=cosmic_dir,
  46. dbsnp=dbsnp,
  47. dbsnp_dir=dbsnp_dir,
  48. docker=sentieon_docker,
  49. disk_size=disk_size,
  50. cluster_config=cluster_config
  51. }
  52. call bcftools.bcftools as bcftools {
  53. input:
  54. pon_vcf=PON.pon_vcf,
  55. docker=bcftools_docker,
  56. disk_size=disk_size,
  57. cluster_config=cluster_config
  58. }
  59. }
  60. call TNseq.TNseq as TNseq {
  61. input:
  62. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  63. SENTIEON_LICENSE=SENTIEON_LICENSE,
  64. PONmode=PONmode,
  65. fasta=fasta,
  66. ref_dir=ref_dir,
  67. corealigner_bam=corealigner_bam,
  68. corealigner_bam_index=corealigner_bam_index,
  69. dbsnp=dbsnp,
  70. dbsnp_dir=dbsnp_dir,
  71. tumor_name=sample + "tumor",
  72. normal_name=sample + "normal",
  73. cosmic_vcf=cosmic_vcf,
  74. cosmic_dir=cosmic_dir,
  75. panel_of_normal_vcf = bcftools.panel_of_normal_vcf,
  76. docker=sentieon_docker,
  77. sample=sample,
  78. disk_size=disk_size,
  79. cluster_config=cluster_config
  80. }
  81. call TNscope.TNscope as TNscope {
  82. input:
  83. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  84. SENTIEON_LICENSE=SENTIEON_LICENSE,
  85. PONmode=PONmode,
  86. fasta=fasta,
  87. ref_dir=ref_dir,
  88. corealigner_bam=corealigner_bam,
  89. corealigner_bam_index=corealigner_bam_index,
  90. dbsnp=dbsnp,
  91. dbsnp_dir=dbsnp_dir,
  92. tumor_name=sample + "tumor",
  93. normal_name=sample + "normal",
  94. cosmic_vcf=cosmic_vcf,
  95. cosmic_dir=cosmic_dir,
  96. panel_of_normal_vcf = bcftools.panel_of_normal_vcf,
  97. docker=sentieon_docker,
  98. sample=sample,
  99. disk_size=disk_size,
  100. cluster_config=cluster_config
  101. }
  102. if (set_annovar){
  103. call annovar.annovar as annovar {
  104. input:
  105. docker=annovar_docker,
  106. database=database,
  107. tnscope_vcf_file=TNscope.TNscope_vcf,
  108. tnseq_vcf_file=TNseq.TNseq_vcf,
  109. sample=sample,
  110. cluster_config=cluster_config,
  111. disk_size=disk_size
  112. }
  113. }
  114. if (set_vcf2maf){
  115. call vcf2maf.vcf2maf as vcf2maf {
  116. input:
  117. docker=vcf2maf_r_docker,
  118. multianno_tnscope_txt=annovar.multianno_tnscope_txt,
  119. multianno_tnseq_txt=annovar.multianno_tnseq_txt,
  120. sample=sample,
  121. cluster_config=cluster_config,
  122. disk_size=disk_size
  123. }
  124. }
  125. }