Variant calling using Varscan somatic, processSomatic and somaticFilter based on BAM file.
Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.

146 lines
4.1KB

  1. import "./tasks/somatic.wdl" as somatic
  2. import "./tasks/processSomatic.wdl" as processSomatic
  3. import "./tasks/somaticFilter.wdl" as somaticFilter
  4. import "./tasks/annovar.wdl" as annovar
  5. import "./tasks/vcf2maf.wdl" as vcf2maf
  6. workflow {{ project_name }} {
  7. String sample_id
  8. File normal_recaled_bam
  9. File tumor_recaled_bam
  10. File normal_recaled_bam_index
  11. File tumor_recaled_bam_index
  12. String varscan_docker
  13. String annovar_docker
  14. String maftools_docker
  15. String disk_size
  16. String cluster_config
  17. File ref_dir
  18. String fasta
  19. File dbmills_dir
  20. String db_mills
  21. File dbsnp_dir
  22. String dbsnp
  23. File regions
  24. File database
  25. call somatic.somatic as somatic {
  26. input:
  27. sample=sample_id,
  28. normal_bam=normal_recaled_bam,
  29. tumor_bam=tumor_recaled_bam,
  30. normal_bam_index=normal_recaled_bam_index,
  31. tumor_bam_index=tumor_recaled_bam_index,
  32. ref_dir=ref_dir,
  33. fasta=fasta,
  34. docker=varscan_docker,
  35. disk_size=disk_size,
  36. cluster_config=cluster_config
  37. }
  38. call processSomatic.processSomatic as processSomatic {
  39. input:
  40. sample=sample_id,
  41. varscan_snp=somatic.varscan_snp,
  42. varscan_indel=somatic.varscan_indel,
  43. docker=varscan_docker,
  44. disk_size=disk_size,
  45. cluster_config=cluster_config
  46. }
  47. call somaticFilter.somaticFilter as somaticFilter {
  48. input:
  49. sample=sample_id,
  50. varscan_snp_somatic_hc=processSomatic.varscan_snp_somatic_hc,
  51. varscan_snp_germline_hc=processSomatic.varscan_snp_germline_hc,
  52. varscan_snp_loh_hc=processSomatic.varscan_snp_loh_hc,
  53. varscan_indel_somatic_hc=processSomatic.varscan_indel_somatic_hc,
  54. varscan_indel_germline_hc=processSomatic.varscan_indel_germline_hc,
  55. varscan_indel_loh_hc=processSomatic.varscan_indel_loh_hc,
  56. varscan_indel=somatic.varscan_indel,
  57. docker=varscan_docker,
  58. disk_size=disk_size,
  59. cluster_config=cluster_config
  60. }
  61. call annovar.annovar as snp_somatic_annovar {
  62. input:
  63. sample=sample_id,
  64. vcf=somaticFilter.varscan_snp_somatic_filter,
  65. database=database,
  66. docker=annovar_docker,
  67. cluster_config=cluster_config,
  68. disk_size=disk_size
  69. }
  70. call vcf2maf.vcf2maf as snp_somatic_vcf2maf {
  71. input:
  72. sample=sample_id,
  73. multianno_txt=snp_somatic_annovar.multianno_txt,
  74. docker=maftools_docker,
  75. cluster_config=cluster_config,
  76. disk_size=disk_size
  77. }
  78. call annovar.annovar as snp_loh_annovar {
  79. input:
  80. sample=sample_id,
  81. vcf=somaticFilter.varscan_snp_loh_filter,
  82. database=database,
  83. docker=annovar_docker,
  84. cluster_config=cluster_config,
  85. disk_size=disk_size
  86. }
  87. call vcf2maf.vcf2maf as snp_loh_vcf2maf {
  88. input:
  89. sample=sample_id,
  90. multianno_txt=snp_loh_annovar.multianno_txt,
  91. docker=maftools_docker,
  92. cluster_config=cluster_config,
  93. disk_size=disk_size
  94. }
  95. call annovar.annovar as indel_somatic_annovar {
  96. input:
  97. sample=sample_id,
  98. vcf=somaticFilter.varscan_indel_somatic_filter,
  99. database=database,
  100. docker=annovar_docker,
  101. cluster_config=cluster_config,
  102. disk_size=disk_size
  103. }
  104. call vcf2maf.vcf2maf as indel_somatic_vcf2maf {
  105. input:
  106. sample=sample_id,
  107. multianno_txt=indel_somatic_annovar.multianno_txt,
  108. docker=maftools_docker,
  109. cluster_config=cluster_config,
  110. disk_size=disk_size
  111. }
  112. call annovar.annovar as indel_loh_annovar {
  113. input:
  114. sample=sample_id,
  115. vcf=somaticFilter.varscan_indel_loh_filter,
  116. database=database,
  117. docker=annovar_docker,
  118. cluster_config=cluster_config,
  119. disk_size=disk_size
  120. }
  121. call vcf2maf.vcf2maf as indel_loh_vcf2maf {
  122. input:
  123. sample=sample_id,
  124. multianno_txt=indel_loh_annovar.multianno_txt,
  125. docker=maftools_docker,
  126. cluster_config=cluster_config,
  127. disk_size=disk_size
  128. }
  129. }