Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.

179 lines
4.8KB

  1. import "./tasks/fastqc.wdl" as fastqc
  2. import "./tasks/fastqscreen.wdl" as fastqscreen
  3. import "./tasks/qualimap.wdl" as qualimap
  4. import "./tasks/mapping.wdl" as mapping
  5. import "./tasks/Metrics.wdl" as Metrics
  6. import "./tasks/Dedup.wdl" as Dedup
  7. import "./tasks/deduped_Metrics.wdl" as deduped_Metrics
  8. import "./tasks/Realigner.wdl" as Realigner
  9. import "./tasks/BQSR.wdl" as BQSR
  10. workflow {{ project_name }} {
  11. String sample_id
  12. File fastq_1
  13. File fastq_2
  14. File screen_ref_dir
  15. File fastq_screen_conf
  16. File ref_dir
  17. String fasta
  18. File covered_bed
  19. String SENTIEON_INSTALL_DIR
  20. String SENTIEON_LICENSE
  21. String sentieon_docker
  22. String fastqc_docker
  23. String fastqscreen_docker
  24. String qualimap_docker
  25. String CPU8_GB32_cluster
  26. String CPU4_GB16_cluster
  27. String CPU2_GB8_cluster
  28. String disk_size
  29. call fastqc.fastqc as fastqc {
  30. input:
  31. sample=sample_id,
  32. read1=fastq_1,
  33. read2=fastq_2,
  34. docker=fastqc_docker,
  35. disk_size=disk_size,
  36. cluster_config=CPU8_GB32_cluster
  37. }
  38. call fastqscreen.fastq_screen as fastqscreen {
  39. input:
  40. sample=sample_id,
  41. read1=fastq_1,
  42. read2=fastq_2,
  43. screen_ref_dir=screen_ref_dir,
  44. fastq_screen_conf=fastq_screen_conf,
  45. docker=fastqscreen_docker,
  46. disk_size=disk_size,
  47. cluster_config=CPU2_GB8_cluster
  48. }
  49. call mapping.mapping as mapping {
  50. input:
  51. group=sample_id,
  52. sample=sample_id,
  53. fastq_1=fastq_1,
  54. fastq_2=fastq_2,
  55. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  56. SENTIEON_LICENSE=SENTIEON_LICENSE,
  57. pl="ILLUMINAL",
  58. fasta=fasta,
  59. ref_dir=ref_dir,
  60. docker=sentieon_docker,
  61. disk_size=disk_size,
  62. cluster_config=CPU8_GB32_cluster
  63. }
  64. call Metrics.Metrics as Metrics {
  65. input:
  66. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  67. SENTIEON_LICENSE=SENTIEON_LICENSE,
  68. fasta=fasta,
  69. ref_dir=ref_dir,
  70. sorted_bam=mapping.sorted_bam,
  71. sorted_bam_index=mapping.sorted_bam_index,
  72. sample=sample_id,
  73. docker=sentieon_docker,
  74. disk_size=disk_size,
  75. cluster_config=CPU2_GB8_cluster
  76. }
  77. call Dedup.Dedup as Dedup {
  78. input:
  79. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  80. SENTIEON_LICENSE=SENTIEON_LICENSE,
  81. sorted_bam=mapping.sorted_bam,
  82. sorted_bam_index=mapping.sorted_bam_index,
  83. sample=sample_id,
  84. docker=sentieon_docker,
  85. disk_size=disk_size,
  86. cluster_config=CPU8_GB32_cluster
  87. }
  88. call deduped_Metrics.deduped_Metrics as deduped_Metrics {
  89. input:
  90. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  91. SENTIEON_LICENSE=SENTIEON_LICENSE,
  92. fasta=fasta,
  93. ref_dir=ref_dir,
  94. deduped_bam=Dedup.deduped_bam,
  95. deduped_bam_index=Dedup.deduped_bam_index,
  96. sample=sample_id,
  97. docker=sentieon_docker,
  98. disk_size=disk_size,
  99. cluster_config=CPU2_GB8_cluster
  100. }
  101. call qualimap.qualimap as qualimap {
  102. input:
  103. sample=sample_id,
  104. bam=Dedup.deduped_bam,
  105. bai=Dedup.deduped_bam_index,
  106. covered_bed=covered_bed,
  107. docker=qualimap_docker,
  108. disk_size=disk_size,
  109. cluster_config=CPU8_GB32_cluster
  110. }
  111. call Realigner.Realigner as Realigner {
  112. input:
  113. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  114. SENTIEON_LICENSE=SENTIEON_LICENSE,
  115. fasta=fasta,
  116. ref_dir=ref_dir,
  117. deduped_bam=Dedup.deduped_bam,
  118. deduped_bam_index=Dedup.deduped_bam_index,
  119. db_mills=db_mills,
  120. dbmills_dir=dbmills_dir,
  121. sample=sample_id + '_tumor',
  122. docker=sentieon_docker,
  123. disk_size=disk_size,
  124. cluster_config=cluster_config
  125. }
  126. call BQSR.BQSR as BQSR {
  127. input:
  128. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  129. SENTIEON_LICENSE=SENTIEON_LICENSE,
  130. fasta=fasta,
  131. ref_dir=ref_dir,
  132. realigned_bam=Realigner.realigner_bam,
  133. realigned_bam_index=Realigner.realigner_bam_index,
  134. db_mills=db_mills,
  135. dbmills_dir=dbmills_dir,
  136. dbsnp=dbsnp,
  137. dbsnp_dir=dbsnp_dir,
  138. sample=sample_id + '_tumor',
  139. docker=sentieon_docker,
  140. disk_size=disk_size,
  141. cluster_config=cluster_config
  142. }
  143. output {
  144. File fastqc_read1_html = fastqc.read1_html
  145. File fastqc_read1_zip = fastqc.read1_zip
  146. File fastqc_read2_html = fastqc.read2_html
  147. File fastqc_read2_zip = fastqc.read2_zip
  148. File fastqscreen_png1 = fastqscreen.png1
  149. File fastqscreen_txt1 = fastqscreen.txt1
  150. File fastqscreen_html1 = fastqscreen.html1
  151. File fastqscreen_png2 = fastqscreen.png2
  152. File fastqscreen_txt2 = fastqscreen.txt2
  153. File fastqscreen_html2 = fastqscreen.html2
  154. File qualimap_tar = qualimap.tar
  155. File qualimap_duplication = qualimap.duplication
  156. File Dedup_dedup_metrics = Dedup.dedup_metrics
  157. File Dedup_duplication = Dedup.duplication
  158. File deduped_bam = Dedup.deduped_bam
  159. File deduped_bam_index = Dedup.deduped_bam_index
  160. File Metrics_aln_metrics = Metrics.aln_metrics
  161. File Metrics_gc_metrics = Metrics.gc_metrics
  162. File Metrics_gc_summary = Metrics.gc_summary
  163. File Metrics_is_metrics = Metrics.is_metrics
  164. }
  165. }