@@ -27,6 +27,8 @@ configfile: "config.yaml"
27
27
28
28
manager = PipelineManager("fastqc", config)
29
29
30
+ sequana_wrapper_branch = "main"
31
+
30
32
# This is just for information. Not used in the pipeline but only for HTML rpeort
31
33
# do we have illumina paired data with tag _R1_ ?
32
34
R1 = [1 for x in manager.samples.values() if "_R1_" in x.split("/")[-1]]
@@ -67,8 +69,10 @@ if 'general' in config and 'method_choice' in config['general'] and \
67
69
METHOD = "falco"
68
70
69
71
rule falco:
70
- input: manager.getrawdata()
71
- output: "samples/{sample}/summary.txt"
72
+ input:
73
+ manager.getrawdata()
74
+ output:
75
+ "samples/{sample}/summary.txt"
72
76
log:
73
77
"samples/{sample}/falco.log"
74
78
threads:
@@ -77,19 +81,21 @@ if 'general' in config and 'method_choice' in config['general'] and \
77
81
options=config['falco']['options'],
78
82
working_directory="samples/{sample}"
79
83
container:
80
- "https://zenodo.org/record/7014954/files/falco_1.0.0.img"
84
+ config['apptainers']['falco']
81
85
resources:
82
86
**config['falco']['resources']
83
87
wrapper:
84
- "main /wrappers/falco"
88
+ f"{sequana_wrapper_branch} /wrappers/falco"
85
89
__multiqc__input = expand("samples/{sample}/summary.txt", sample=manager.samples)
86
90
87
91
else:
88
92
METHOD = "fastqc"
89
93
90
94
rule fastqc:
91
- input: manager.getrawdata()
92
- output: "samples/{sample}/fastqc.done"
95
+ input:
96
+ manager.getrawdata()
97
+ output:
98
+ "samples/{sample}/fastqc.done"
93
99
log:
94
100
"samples/{sample}/fastqc.log"
95
101
threads:
@@ -100,9 +106,9 @@ else:
100
106
resources:
101
107
**config['fastqc']['resources']
102
108
container:
103
- "https://zenodo.org/record/7015004/files/fastqc_0.11.9-py3.img"
109
+ config['apptainers']['fastqc']
104
110
wrapper:
105
- "main /wrappers/fastqc"
111
+ f"{sequana_wrapper_branch} /wrappers/fastqc"
106
112
__multiqc__input = expand("samples/{sample}/fastqc.done", sample=manager.samples)
107
113
108
114
@@ -170,11 +176,28 @@ if config['multiqc']['do']:
170
176
"main/wrappers/multiqc"
171
177
172
178
173
- # ====================================================================== rulegraph
174
- sequana_rulegraph_mapper = {}
175
- if config['multiqc']['do']:
176
- sequana_rulegraph_mapper["multiqc"] = "../multiqc/multiqc_report.html"
177
- include: sm.modules['rulegraph']
179
+ # ====================================================================== rulegraph
180
+
181
+ rule rulegraph:
182
+ input: str(manager.snakefile)
183
+ output:
184
+ svg = "rulegraph/rulegraph.dot"
185
+ params:
186
+ mapper = {"multiqc": "../multiqc/multiqc_report.html"} if config['multiqc']['do'] else {},
187
+ configname = "config.yaml"
188
+ wrapper:
189
+ f"{sequana_wrapper_branch}/wrappers/rulegraph"
190
+
191
+
192
+ rule dot2svg:
193
+ input:
194
+ "rulegraph/rulegraph.dot"
195
+ output:
196
+ ".sequana/rulegraph.svg"
197
+ container:
198
+ config['apptainers']['graphviz']
199
+ shell:
200
+ """dot -Tsvg {input} -o {output}"""
178
201
179
202
180
203
rule plotting_and_stats:
0 commit comments