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

138 行
3.2KB

  1. import "./tasks/mapping.wdl" as mapping
  2. import "./tasks/Metrics.wdl" as Metrics
  3. import "./tasks/Dedup.wdl" as Dedup
  4. import "./tasks/deduped_Metrics.wdl" as deduped_Metrics
  5. import "./tasks/Realigner.wdl" as Realigner
  6. import "./tasks/BQSR.wdl" as BQSR
  7. import "./tasks/Haplotyper.wdl" as Haplotyper
  8. import "./tasks/GVCFtyper.wdl" as GVCFtyper
  9. workflow {{ project_name }} {
  10. File inputSamplesFile
  11. Array[Array[File]] inputSamples = read_tsv(inputSamplesFile)
  12. String SENTIEON_INSTALL_DIR
  13. String quartet_sample
  14. String docker
  15. String fasta
  16. File ref_dir
  17. File dbmills_dir
  18. String db_mills
  19. File dbsnp_dir
  20. String dbsnp
  21. String disk_size
  22. String cluster_config
  23. scatter (quartet in inputSamples){
  24. call mapping.mapping as mapping {
  25. input:
  26. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  27. group=quartet[2],
  28. sample=quartet[2],
  29. pl="ILLUMINAL",
  30. fasta=fasta,
  31. ref_dir=ref_dir,
  32. fastq_1=quartet[0],
  33. fastq_2=quartet[1],
  34. docker=docker,
  35. disk_size=disk_size,
  36. cluster_config=cluster_config
  37. }
  38. call Metrics.Metrics as Metrics {
  39. input:
  40. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  41. fasta=fasta,
  42. ref_dir=ref_dir,
  43. sorted_bam=mapping.sorted_bam,
  44. sorted_bam_index=mapping.sorted_bam_index,
  45. sample=quartet[2],
  46. docker=docker,
  47. disk_size=disk_size,
  48. cluster_config=cluster_config
  49. }
  50. call Dedup.Dedup as Dedup {
  51. input:
  52. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  53. sorted_bam=mapping.sorted_bam,
  54. sorted_bam_index=mapping.sorted_bam_index,
  55. sample=quartet[2],
  56. docker=docker,
  57. disk_size=disk_size,
  58. cluster_config=cluster_config
  59. }
  60. call deduped_Metrics.deduped_Metrics as deduped_Metrics {
  61. input:
  62. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  63. fasta=fasta,
  64. ref_dir=ref_dir,
  65. Dedup_bam=Dedup.Dedup_bam,
  66. Dedup_bam_index=Dedup.Dedup_bam_index,
  67. sample=quartet[2],
  68. docker=docker,
  69. disk_size=disk_size,
  70. cluster_config=cluster_config
  71. }
  72. call Realigner.Realigner as Realigner {
  73. input:
  74. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  75. fasta=fasta,
  76. ref_dir=ref_dir,
  77. Dedup_bam=Dedup.Dedup_bam,
  78. Dedup_bam_index=Dedup.Dedup_bam_index,
  79. db_mills=db_mills,
  80. dbmills_dir=dbmills_dir,
  81. sample=quartet[2],
  82. docker=docker,
  83. disk_size=disk_size,
  84. cluster_config=cluster_config
  85. }
  86. call BQSR.BQSR as BQSR {
  87. input:
  88. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  89. fasta=fasta,
  90. ref_dir=ref_dir,
  91. realigned_bam=Realigner.realigner_bam,
  92. realigned_bam_index=Realigner.realigner_bam_index,
  93. db_mills=db_mills,
  94. dbmills_dir=dbmills_dir,
  95. dbsnp=dbsnp,
  96. dbsnp_dir=dbsnp_dir,
  97. sample=quartet[2],
  98. docker=docker,
  99. disk_size=disk_size,
  100. cluster_config=cluster_config
  101. }
  102. call Haplotyper.Haplotyper as Haplotyper {
  103. input:
  104. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  105. fasta=fasta,
  106. ref_dir=ref_dir,
  107. recaled_bam=BQSR.recaled_bam,
  108. recaled_bam_index=BQSR.recaled_bam_index,
  109. sample=quartet[2],
  110. docker=docker,
  111. disk_size=disk_size,
  112. cluster_config=cluster_config
  113. }
  114. }
  115. call GVCFtyper.GVCFtyper as GVCFtyper {
  116. input:
  117. ref_dir=ref_dir,
  118. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  119. fasta=fasta,
  120. vcf=Haplotyper.vcf,
  121. vcf_idx=Haplotyper.vcf_idx,
  122. quartet_sample=quartet_sample,
  123. docker=docker,
  124. cluster_config=cluster_config,
  125. disk_size=disk_size
  126. }
  127. }