You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

93 lines
2.5KB

  1. import "./tasks/CNVkit.wdl" as cnvkit
  2. import "./tasks/CNVkit_multi_REF.wdl" as cnvkit_multi
  3. import "./tasks/AnnotSV.wdl" as AnnotSV
  4. workflow {{ project_name }} {
  5. String sample_id
  6. File ref_fasta_dir
  7. File ref_fasta_cnvkit
  8. String ref_fasta
  9. File ref_flat
  10. File? bed_file
  11. String Ploidy
  12. File gc
  13. File tumor_bam
  14. File tumor_bam_bai
  15. File? normal_bam
  16. File? normal_bam_bai
  17. File? VCF
  18. Array[File]? inputBams
  19. Array[File]? inputBamIndexs
  20. String docker_cnvkit
  21. String cluster_config
  22. String disk_size
  23. File annotsv_database
  24. String docker_annotsv
  25. String docker_sequenza
  26. if (defined(inputBams)) {
  27. call cnvkit_multi.cnvkit_multi as cnvkit_multi{
  28. input:
  29. sample_id=sample_id,
  30. ref_dir=ref_fasta_cnvkit,
  31. fasta=ref_fasta,
  32. ref_flat=ref_flat,
  33. Ploidy=Ploidy,
  34. bed_file=bed_file,
  35. tumor_bam=tumor_bam,
  36. tumor_bam_index=tumor_bam_bai,
  37. normal_bams=inputBams,
  38. normal_bam_indexs=inputBamIndexs,
  39. VCF = VCF,
  40. docker=docker_cnvkit,
  41. cluster_config=cluster_config,
  42. disk_size=disk_size
  43. }
  44. call AnnotSV.AnnotSV as cnvkit_AnnotSV_multi{
  45. input:
  46. sample=sample_id,
  47. somatic_vcf=cnvkit_multi.cnv_bed,
  48. annotsv_database=annotsv_database,
  49. docker=docker_annotsv,
  50. cluster_config=cluster_config,
  51. disk_size=disk_size
  52. }
  53. }
  54. if (!defined(inputBams)) {
  55. call cnvkit.cnvkit as cnvkit{
  56. input:
  57. sample_id=sample_id,
  58. ref_dir=ref_fasta_cnvkit,
  59. fasta=ref_fasta,
  60. ref_flat=ref_flat,
  61. Ploidy=Ploidy,
  62. bed_file=bed_file,
  63. tumor_bam=tumor_bam,
  64. tumor_bam_index=tumor_bam_bai,
  65. normal_bam=normal_bam,
  66. normal_bam_index=normal_bam_bai,
  67. VCF = VCF,
  68. docker=docker_cnvkit,
  69. cluster_config=cluster_config,
  70. disk_size=disk_size
  71. }
  72. call AnnotSV.AnnotSV as cnvkit_AnnotSV{
  73. input:
  74. sample=sample_id,
  75. somatic_vcf=cnvkit.cnv_bed,
  76. annotsv_database=annotsv_database,
  77. docker=docker_annotsv,
  78. cluster_config=cluster_config,
  79. disk_size=disk_size
  80. }
  81. }
  82. }