kevinrue/snakemake-cncb-ensembl-2024
None
Overview
Topics:
Latest release: None, Last update: 2025-04-10
Linting: linting: failed, Formatting: formatting: failed
Deployment
Step 1: Install Snakemake and Snakedeploy
Snakemake and Snakedeploy are best installed via the Mamba package manager (a drop-in replacement for conda). If you have neither Conda nor Mamba, it is recommended to install Miniforge. More details regarding Mamba can be found here.
When using Mamba, run
mamba create -c conda-forge -c bioconda --name snakemake snakemake snakedeploy
to install both Snakemake and Snakedeploy in an isolated environment. For all following commands ensure that this environment is activated via
conda activate snakemake
Step 2: Deploy workflow
With Snakemake and Snakedeploy installed, the workflow can be deployed as follows. First, create an appropriate project working directory on your system and enter it:
mkdir -p path/to/project-workdir
cd path/to/project-workdir
In all following steps, we will assume that you are inside of that directory. Then run
snakedeploy deploy-workflow https://github.com/kevinrue/snakemake-cncb-ensembl-2024 . --tag None
Snakedeploy will create two folders, workflow
and config
. The former contains the deployment of the chosen workflow as a Snakemake module, the latter contains configuration files which will be modified in the next step in order to configure the workflow to your needs.
Step 3: Configure workflow
To configure the workflow, adapt config/config.yml
to your needs following the instructions below.
Step 4: Run workflow
The deployment method is controlled using the --software-deployment-method
(short --sdm
) argument.
To run the workflow with automatic deployment of all required software via conda
/mamba
, use
snakemake --cores all --sdm conda
Snakemake will automatically detect the main Snakefile
in the workflow
subfolder and execute the workflow module that has been defined by the deployment in step 2.
For further options such as cluster and cloud execution, see the docs.
Step 5: Generate report
After finalizing your data analysis, you can automatically generate an interactive visual HTML report for inspection of results together with parameters and code inside of the browser using
snakemake --report report.zip
Configuration
The following section is imported from the workflow’s config/README.md
.
Describe how to configure the workflow (using config.yaml and maybe additional files). All of them need to be present with example entries inside of the config folder.
Linting and formatting
Linting results
1Lints for snakefile /tmp/tmp10fpnwec/workflow/rules/downloads.smk:
2 * Mixed rules and functions in same snakefile.:
3 Small one-liner functions used only once should be defined as lambda
4 expressions. Other functions should be collected in a common module, e.g.
5 'rules/common.smk'. This makes the workflow steps more readable.
6 Also see:
7 https://snakemake.readthedocs.io/en/latest/snakefiles/modularization.html#includes
8
9Lints for snakefile /tmp/tmp10fpnwec/workflow/rules/simpleaf.smk:
10 * Mixed rules and functions in same snakefile.:
11 Small one-liner functions used only once should be defined as lambda
12 expressions. Other functions should be collected in a common module, e.g.
13 'rules/common.smk'. This makes the workflow steps more readable.
14 Also see:
15 https://snakemake.readthedocs.io/en/latest/snakefiles/modularization.html#includes
16
17Lints for rule gtf_find_duplicates (line 1, /tmp/tmp10fpnwec/workflow/rules/gtf.smk):
18 * No log directive defined:
19 Without a log directive, all output will be printed to the terminal. In
20 distributed environments, this means that errors are harder to discover.
21 In local environments, output of concurrent jobs will be mixed and become
22 unreadable.
23 Also see:
24 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
25
26Lints for rule download_gtf (line 11, /tmp/tmp10fpnwec/workflow/rules/downloads.smk):
27 * Shell command directly uses variable download_gtf_cmd_str from outside of the rule:
28 It is recommended to pass all files as input and output, and non-file
29 parameters via the params directive. Otherwise, provenance tracking is
30 less accurate.
31 Also see:
32 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
33
34Lints for rule download_concatenate_genome_fasta (line 42, /tmp/tmp10fpnwec/workflow/rules/downloads.smk):
35 * Shell command directly uses variable download_concatenate_genome_fasta_cmd_str from outside of the rule:
36 It is recommended to pass all files as input and output, and non-file
37 parameters via the params directive. Otherwise, provenance tracking is
38 less accurate.
39 Also see:
40 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
41
42Lints for rule simpleaf_quant_rds (line 1, /tmp/tmp10fpnwec/workflow/rules/r.smk):
43 * No log directive defined:
44 Without a log directive, all output will be printed to the terminal. In
45 distributed environments, this means that errors are harder to discover.
46 In local environments, output of concurrent jobs will be mixed and become
47 unreadable.
48 Also see:
49 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
50
51Lints for rule simpleaf_quant_merge_rds (line 16, /tmp/tmp10fpnwec/workflow/rules/r.smk):
52 * No log directive defined:
53 Without a log directive, all output will be printed to the terminal. In
54 distributed environments, this means that errors are harder to discover.
55 In local environments, output of concurrent jobs will be mixed and become
56 unreadable.
57 Also see:
58 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
59
60Lints for rule simpleaf_lower_umi_per_sample (line 30, /tmp/tmp10fpnwec/workflow/rules/r.smk):
61 * No log directive defined:
62 Without a log directive, all output will be printed to the terminal. In
63 distributed environments, this means that errors are harder to discover.
64 In local environments, output of concurrent jobs will be mixed and become
65 unreadable.
66 Also see:
67 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
68
69Lints for rule dropletutils_barcode_ranks (line 46, /tmp/tmp10fpnwec/workflow/rules/r.smk):
70 * No log directive defined:
71 Without a log directive, all output will be printed to the terminal. In
72 distributed environments, this means that errors are harder to discover.
73 In local environments, output of concurrent jobs will be mixed and become
74 unreadable.
75 Also see:
76 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
77
78Lints for rule dropletutils_emptydrops_per_sample (line 61, /tmp/tmp10fpnwec/workflow/rules/r.smk):
79 * No log directive defined:
80 Without a log directive, all output will be printed to the terminal. In
81 distributed environments, this means that errors are harder to discover.
82 In local environments, output of concurrent jobs will be mixed and become
83 unreadable.
84 Also see:
85 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
86
87Lints for rule sce_after_emptydrops (line 81, /tmp/tmp10fpnwec/workflow/rules/r.smk):
88 * No log directive defined:
89 Without a log directive, all output will be printed to the terminal. In
90 distributed environments, this means that errors are harder to discover.
91 In local environments, output of concurrent jobs will be mixed and become
92 unreadable.
93 Also see:
94 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
95
96Lints for rule filter_mitochondria (line 98, /tmp/tmp10fpnwec/workflow/rules/r.smk):
97 * No log directive defined:
98 Without a log directive, all output will be printed to the terminal. In
99 distributed environments, this means that errors are harder to discover.
100 In local environments, output of concurrent jobs will be mixed and become
101 unreadable.
102 Also see:
103 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
104
105Lints for rule scan_parameters_before_scdblfinder (line 115, /tmp/tmp10fpnwec/workflow/rules/r.smk):
106 * No log directive defined:
107 Without a log directive, all output will be printed to the terminal. In
108 distributed environments, this means that errors are harder to discover.
109 In local environments, output of concurrent jobs will be mixed and become
110 unreadable.
111 Also see:
112 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
113
114Lints for rule scdblfinder (line 139, /tmp/tmp10fpnwec/workflow/rules/r.smk):
115 * No log directive defined:
116 Without a log directive, all output will be printed to the terminal. In
117 distributed environments, this means that errors are harder to discover.
118 In local environments, output of concurrent jobs will be mixed and become
119 unreadable.
120 Also see:
121 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
122
123Lints for rule scran_hvgs_sample (line 155, /tmp/tmp10fpnwec/workflow/rules/r.smk):
124 * No log directive defined:
125 Without a log directive, all output will be printed to the terminal. In
126 distributed environments, this means that errors are harder to discover.
127 In local environments, output of concurrent jobs will be mixed and become
128 unreadable.
129 Also see:
130 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
131
132Lints for rule simpleaf_counts_all_rds (line 173, /tmp/tmp10fpnwec/workflow/rules/r.smk):
133 * No log directive defined:
134 Without a log directive, all output will be printed to the terminal. In
135 distributed environments, this means that errors are harder to discover.
136 In local environments, output of concurrent jobs will be mixed and become
137 unreadable.
138 Also see:
139 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
140
141Lints for rule simpleaf_counts_hdf5 (line 187, /tmp/tmp10fpnwec/workflow/rules/r.smk):
142 * No log directive defined:
143 Without a log directive, all output will be printed to the terminal. In
144 distributed environments, this means that errors are harder to discover.
145 In local environments, output of concurrent jobs will be mixed and become
146 unreadable.
147 Also see:
148 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
149
150Lints for rule scuttle_lognormcounts (line 200, /tmp/tmp10fpnwec/workflow/rules/r.smk):
151 * No log directive defined:
152 Without a log directive, all output will be printed to the terminal. In
153 distributed environments, this means that errors are harder to discover.
154 In local environments, output of concurrent jobs will be mixed and become
155 unreadable.
156 Also see:
157 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
158
159Lints for rule filtered_gene_ids (line 214, /tmp/tmp10fpnwec/workflow/rules/r.smk):
160 * No log directive defined:
161 Without a log directive, all output will be printed to the terminal. In
162 distributed environments, this means that errors are harder to discover.
163 In local environments, output of concurrent jobs will be mixed and become
164 unreadable.
165 Also see:
166 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
167
168Lints for rule scran_modelgenevar_block (line 228, /tmp/tmp10fpnwec/workflow/rules/r.smk):
169 * No log directive defined:
170 Without a log directive, all output will be printed to the terminal. In
171 distributed environments, this means that errors are harder to discover.
172 In local environments, output of concurrent jobs will be mixed and become
173 unreadable.
174 Also see:
175 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
176
177Lints for rule scran_top_hvgs (line 245, /tmp/tmp10fpnwec/workflow/rules/r.smk):
178 * No log directive defined:
179 Without a log directive, all output will be printed to the terminal. In
180 distributed environments, this means that errors are harder to discover.
181 In local environments, output of concurrent jobs will be mixed and become
182 unreadable.
183 Also see:
184 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
185
186Lints for rule batchelor_fastmnn (line 261, /tmp/tmp10fpnwec/workflow/rules/r.smk):
187 * No log directive defined:
188 Without a log directive, all output will be printed to the terminal. In
189 distributed environments, this means that errors are harder to discover.
190 In local environments, output of concurrent jobs will be mixed and become
191 unreadable.
192 Also see:
193 https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
194
195Lints for rule cluster_after_integration (line 280, /tmp/tmp10fpnwec/workflow/rules/r.smk):
196 * No log directive defined:
197 Without a log directive, all output will be printed to the terminal. In
198 distributed environments, this means that errors are harder to discover.
199 In local environments, output of concurrent jobs will be mixed and become
200 unreadable.
201
202... (truncated)
Formatting results
1[DEBUG]
2[DEBUG]
3[DEBUG] In file "/tmp/tmp10fpnwec/workflow/rules/reports.smk": Formatted content is different from original
4[DEBUG]
5[DEBUG] In file "/tmp/tmp10fpnwec/workflow/rules/simpleaf.smk": Formatted content is different from original
6[DEBUG]
7[DEBUG] In file "/tmp/tmp10fpnwec/workflow/Snakefile": Formatted content is different from original
8[DEBUG]
9[DEBUG] In file "/tmp/tmp10fpnwec/workflow/rules/r.smk": Formatted content is different from original
10[DEBUG]
11[DEBUG] In file "/tmp/tmp10fpnwec/workflow/rules/downloads.smk": Formatted content is different from original
12[DEBUG]
13[DEBUG] In file "/tmp/tmp10fpnwec/workflow/rules/common.smk": Formatted content is different from original
14[INFO] 6 file(s) would be changed 😬
15[INFO] 1 file(s) would be left unchanged 🎉
16
17snakefmt version: 0.10.2