Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

121 line
2.5KB

  1. import "./tasks/fastqc.wdl" as fastqc
  2. import "./tasks/fastqscreen.wdl" as fastqscreen
  3. import "./tasks/qualimap.wdl" as qualimap
  4. import "./tasks/hisat2.wdl" as hisat2
  5. import "./tasks/samtools.wdl" as samtools
  6. import "./tasks/stringtie.wdl" as stringtie
  7. import "./tasks/ballgown.wdl" as ballgown
  8. import "./tasks/count.wdl" as count
  9. workflow {{ project_name }} {
  10. File read1
  11. File read2
  12. File idx
  13. File screen_ref_dir
  14. File fastq_screen_conf
  15. String idx_prefix
  16. File gtf
  17. String disk_size
  18. String fastqc_docker
  19. String fastqc_cluster
  20. String fastqscreen_docker
  21. String fastqscreen_cluster
  22. String hisat2_docker
  23. String hisat2_cluster
  24. String stringtie_docker
  25. String stringtie_cluster
  26. String samtools_docker
  27. String samtools_cluster
  28. String qualimap_docker
  29. String qualimap_cluster
  30. String ballgown_docker
  31. String ballgown_cluster
  32. String count_docker
  33. String count_cluster
  34. String count_length
  35. String sample_id
  36. Boolean pre_alignment_qc
  37. if (pre_alignment_qc) {
  38. call fastqc.fastqc as fastqc {
  39. input:
  40. read1=read1,
  41. read2=read2,
  42. docker = fastqc_docker,
  43. cluster = fastqc_cluster,
  44. disk_size = disk_size
  45. }
  46. call fastqscreen.fastqscreen as fastqscreen {
  47. input:
  48. read1 = read1,
  49. read2 = read2,
  50. docker = fastqscreen_docker,
  51. cluster = fastqscreen_cluster,
  52. screen_ref_dir = screen_ref_dir,
  53. fastq_screen_conf = fastq_screen_conf,
  54. disk_size = disk_size
  55. }
  56. }
  57. call hisat2.hisat2 as hisat2 {
  58. input:
  59. docker = hisat2_docker,
  60. cluster = hisat2_cluster,
  61. idx=idx,
  62. idx_prefix=idx_prefix,
  63. read_1P=read1,
  64. read_2P=read2,
  65. disk_size= disk_size
  66. }
  67. call samtools.samtools as samtools {
  68. input:
  69. docker = samtools_docker,
  70. cluster = samtools_cluster,
  71. sam = hisat2.sam,
  72. disk_size= disk_size
  73. }
  74. call qualimap.qualimap as qualimap {
  75. input:
  76. bam = samtools.out_bam,
  77. bai = samtools.out_bam_index,
  78. gtf = gtf,
  79. docker = qualimap_docker,
  80. cluster = qualimap_cluster,
  81. disk_size = disk_size
  82. }
  83. call stringtie.stringtie as stringtie {
  84. input:
  85. docker = stringtie_docker,
  86. cluster = stringtie_cluster,
  87. gtf = gtf,
  88. bam = samtools.out_bam,
  89. disk_size = disk_size
  90. }
  91. call ballgown.ballgown as ballgown {
  92. input:
  93. docker = ballgown_docker,
  94. cluster = ballgown_cluster,
  95. ballgown = stringtie.ballgown,
  96. gene_abundance = stringtie.gene_abundance,
  97. disk_size = disk_size
  98. }
  99. call count.count as count {
  100. input:
  101. sample_id = sample_id,
  102. docker = count_docker,
  103. cluster = count_cluster,
  104. ballgown = stringtie.ballgown,
  105. disk_size = disk_size,
  106. count_length = count_length
  107. }
  108. }