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ů.

305 lines
7.8KB

  1. import "./tasks/gVCF_chromo_split.wdl" as gVCF_chromo_split
  2. import "./tasks/GVCFtyper.wdl" as GVCFtyper
  3. workflow {{ project_name }} {
  4. File inputSamplesFile
  5. Array[Array[File]] inputSamples = read_tsv(inputSamplesFile)
  6. String SENTIEON_INSTALL_DIR
  7. String docker
  8. String project_name
  9. String fasta
  10. File ref_dir
  11. String disk_size
  12. String cluster_config
  13. scatter (quartet in inputSamples){
  14. call gVCF_chromo_split.gVCF_chromo_split as gVCF_chromo_split {
  15. input:
  16. gvcf=quartet[0],
  17. gvcf_idx=quartet[1],
  18. sample=quartet[2],
  19. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  20. docker=docker,
  21. disk_size=disk_size,
  22. cluster_config=cluster_config
  23. }
  24. }
  25. call GVCFtyper.GVCFtyper as GVCFtyper_chr1 {
  26. input:
  27. ref_dir=ref_dir,
  28. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  29. fasta=fasta,
  30. vcf=gVCF_chromo_split.chr1_gvcf,
  31. vcf_idx=gVCF_chromo_split.chr1_gvcf_idx,
  32. project_name=project_name,
  33. docker=docker,
  34. cluster_config=cluster_config,
  35. disk_size=disk_size
  36. }
  37. call GVCFtyper.GVCFtyper as GVCFtyper_chr2 {
  38. input:
  39. ref_dir=ref_dir,
  40. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  41. fasta=fasta,
  42. vcf=gVCF_chromo_split.chr2_gvcf,
  43. vcf_idx=gVCF_chromo_split.chr2_gvcf_idx,
  44. project_name=project_name,
  45. docker=docker,
  46. cluster_config=cluster_config,
  47. disk_size=disk_size
  48. }
  49. call GVCFtyper.GVCFtyper as GVCFtyper_chr3 {
  50. input:
  51. ref_dir=ref_dir,
  52. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  53. fasta=fasta,
  54. vcf=gVCF_chromo_split.chr3_gvcf,
  55. vcf_idx=gVCF_chromo_split.chr3_gvcf_idx,
  56. project_name=project_name,
  57. docker=docker,
  58. cluster_config=cluster_config,
  59. disk_size=disk_size
  60. }
  61. call GVCFtyper.GVCFtyper as GVCFtyper_chr4 {
  62. input:
  63. ref_dir=ref_dir,
  64. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  65. fasta=fasta,
  66. vcf=gVCF_chromo_split.chr4_gvcf,
  67. vcf_idx=gVCF_chromo_split.chr4_gvcf_idx,
  68. project_name=project_name,
  69. docker=docker,
  70. cluster_config=cluster_config,
  71. disk_size=disk_size
  72. }
  73. call GVCFtyper.GVCFtyper as GVCFtyper_chr5 {
  74. input:
  75. ref_dir=ref_dir,
  76. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  77. fasta=fasta,
  78. vcf=gVCF_chromo_split.chr5_gvcf,
  79. vcf_idx=gVCF_chromo_split.chr5_gvcf_idx,
  80. project_name=project_name,
  81. docker=docker,
  82. cluster_config=cluster_config,
  83. disk_size=disk_size
  84. }
  85. call GVCFtyper.GVCFtyper as GVCFtyper_chr6 {
  86. input:
  87. ref_dir=ref_dir,
  88. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  89. fasta=fasta,
  90. vcf=gVCF_chromo_split.chr6_gvcf,
  91. vcf_idx=gVCF_chromo_split.chr6_gvcf_idx,
  92. project_name=project_name,
  93. docker=docker,
  94. cluster_config=cluster_config,
  95. disk_size=disk_size
  96. }
  97. call GVCFtyper.GVCFtyper as GVCFtyper_chr7 {
  98. input:
  99. ref_dir=ref_dir,
  100. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  101. fasta=fasta,
  102. vcf=gVCF_chromo_split.chr7_gvcf,
  103. vcf_idx=gVCF_chromo_split.chr7_gvcf_idx,
  104. project_name=project_name,
  105. docker=docker,
  106. cluster_config=cluster_config,
  107. disk_size=disk_size
  108. }
  109. call GVCFtyper.GVCFtyper as GVCFtyper_chr8 {
  110. input:
  111. ref_dir=ref_dir,
  112. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  113. fasta=fasta,
  114. vcf=gVCF_chromo_split.chr8_gvcf,
  115. vcf_idx=gVCF_chromo_split.chr8_gvcf_idx,
  116. project_name=project_name,
  117. docker=docker,
  118. cluster_config=cluster_config,
  119. disk_size=disk_size
  120. }
  121. call GVCFtyper.GVCFtyper as GVCFtyper_chr9 {
  122. input:
  123. ref_dir=ref_dir,
  124. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  125. fasta=fasta,
  126. vcf=gVCF_chromo_split.chr9_gvcf,
  127. vcf_idx=gVCF_chromo_split.chr9_gvcf_idx,
  128. project_name=project_name,
  129. docker=docker,
  130. cluster_config=cluster_config,
  131. disk_size=disk_size
  132. }
  133. call GVCFtyper.GVCFtyper as GVCFtyper_chr10 {
  134. input:
  135. ref_dir=ref_dir,
  136. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  137. fasta=fasta,
  138. vcf=gVCF_chromo_split.chr10_gvcf,
  139. vcf_idx=gVCF_chromo_split.chr10_gvcf_idx,
  140. project_name=project_name,
  141. docker=docker,
  142. cluster_config=cluster_config,
  143. disk_size=disk_size
  144. }
  145. call GVCFtyper.GVCFtyper as GVCFtyper_chr11 {
  146. input:
  147. ref_dir=ref_dir,
  148. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  149. fasta=fasta,
  150. vcf=gVCF_chromo_split.chr11_gvcf,
  151. vcf_idx=gVCF_chromo_split.chr11_gvcf_idx,
  152. project_name=project_name,
  153. docker=docker,
  154. cluster_config=cluster_config,
  155. disk_size=disk_size
  156. }
  157. call GVCFtyper.GVCFtyper as GVCFtyper_chr12 {
  158. input:
  159. ref_dir=ref_dir,
  160. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  161. fasta=fasta,
  162. vcf=gVCF_chromo_split.chr12_gvcf,
  163. vcf_idx=gVCF_chromo_split.chr12_gvcf_idx,
  164. project_name=project_name,
  165. docker=docker,
  166. cluster_config=cluster_config,
  167. disk_size=disk_size
  168. }
  169. call GVCFtyper.GVCFtyper as GVCFtyper_chr13 {
  170. input:
  171. ref_dir=ref_dir,
  172. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  173. fasta=fasta,
  174. vcf=gVCF_chromo_split.chr13_gvcf,
  175. vcf_idx=gVCF_chromo_split.chr13_gvcf_idx,
  176. project_name=project_name,
  177. docker=docker,
  178. cluster_config=cluster_config,
  179. disk_size=disk_size
  180. }
  181. call GVCFtyper.GVCFtyper as GVCFtyper_chr14 {
  182. input:
  183. ref_dir=ref_dir,
  184. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  185. fasta=fasta,
  186. vcf=gVCF_chromo_split.chr14_gvcf,
  187. vcf_idx=gVCF_chromo_split.chr14_gvcf_idx,
  188. project_name=project_name,
  189. docker=docker,
  190. cluster_config=cluster_config,
  191. disk_size=disk_size
  192. }
  193. call GVCFtyper.GVCFtyper as GVCFtyper_chr15 {
  194. input:
  195. ref_dir=ref_dir,
  196. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  197. fasta=fasta,
  198. vcf=gVCF_chromo_split.chr15_gvcf,
  199. vcf_idx=gVCF_chromo_split.chr15_gvcf_idx,
  200. project_name=project_name,
  201. docker=docker,
  202. cluster_config=cluster_config,
  203. disk_size=disk_size
  204. }
  205. call GVCFtyper.GVCFtyper as GVCFtyper_chr16 {
  206. input:
  207. ref_dir=ref_dir,
  208. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  209. fasta=fasta,
  210. vcf=gVCF_chromo_split.chr16_gvcf,
  211. vcf_idx=gVCF_chromo_split.chr16_gvcf_idx,
  212. project_name=project_name,
  213. docker=docker,
  214. cluster_config=cluster_config,
  215. disk_size=disk_size
  216. }
  217. call GVCFtyper.GVCFtyper as GVCFtyper_chr17 {
  218. input:
  219. ref_dir=ref_dir,
  220. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  221. fasta=fasta,
  222. vcf=gVCF_chromo_split.chr17_gvcf,
  223. vcf_idx=gVCF_chromo_split.chr17_gvcf_idx,
  224. project_name=project_name,
  225. docker=docker,
  226. cluster_config=cluster_config,
  227. disk_size=disk_size
  228. }
  229. call GVCFtyper.GVCFtyper as GVCFtyper_chr18 {
  230. input:
  231. ref_dir=ref_dir,
  232. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  233. fasta=fasta,
  234. vcf=gVCF_chromo_split.chr18_gvcf,
  235. vcf_idx=gVCF_chromo_split.chr18_gvcf_idx,
  236. project_name=project_name,
  237. docker=docker,
  238. cluster_config=cluster_config,
  239. disk_size=disk_size
  240. }
  241. call GVCFtyper.GVCFtyper as GVCFtyper_chr19 {
  242. input:
  243. ref_dir=ref_dir,
  244. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  245. fasta=fasta,
  246. vcf=gVCF_chromo_split.chr19_gvcf,
  247. vcf_idx=gVCF_chromo_split.chr19_gvcf_idx,
  248. project_name=project_name,
  249. docker=docker,
  250. cluster_config=cluster_config,
  251. disk_size=disk_size
  252. }
  253. call GVCFtyper.GVCFtyper as GVCFtyper_chr20 {
  254. input:
  255. ref_dir=ref_dir,
  256. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  257. fasta=fasta,
  258. vcf=gVCF_chromo_split.chr20_gvcf,
  259. vcf_idx=gVCF_chromo_split.chr20_gvcf_idx,
  260. project_name=project_name,
  261. docker=docker,
  262. cluster_config=cluster_config,
  263. disk_size=disk_size
  264. }
  265. call GVCFtyper.GVCFtyper as GVCFtyper_chr21 {
  266. input:
  267. ref_dir=ref_dir,
  268. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  269. fasta=fasta,
  270. vcf=gVCF_chromo_split.chr21_gvcf,
  271. vcf_idx=gVCF_chromo_split.chr21_gvcf_idx,
  272. project_name=project_name,
  273. docker=docker,
  274. cluster_config=cluster_config,
  275. disk_size=disk_size
  276. }
  277. call GVCFtyper.GVCFtyper as GVCFtyper_chr22 {
  278. input:
  279. ref_dir=ref_dir,
  280. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  281. fasta=fasta,
  282. vcf=gVCF_chromo_split.chr22_gvcf,
  283. vcf_idx=gVCF_chromo_split.chr22_gvcf_idx,
  284. project_name=project_name,
  285. docker=docker,
  286. cluster_config=cluster_config,
  287. disk_size=disk_size
  288. }
  289. call GVCFtyper.GVCFtyper as GVCFtyper_chrX {
  290. input:
  291. ref_dir=ref_dir,
  292. SENTIEON_INSTALL_DIR=SENTIEON_INSTALL_DIR,
  293. fasta=fasta,
  294. vcf=gVCF_chromo_split.chrX_gvcf,
  295. vcf_idx=gVCF_chromo_split.chrX_gvcf_idx,
  296. project_name=project_name,
  297. docker=docker,
  298. cluster_config=cluster_config,
  299. disk_size=disk_size
  300. }
  301. }