davelunt/NemaTree

Analysis workflow for root-knot nematode rRNA

Overview

Latest release: None, Last update: 2026-09-05

Share link: https://snakemake.github.io/snakemake-workflow-catalog?wf=davelunt/NemaTree

Quality control: linting: failed formatting: failed

Deployment

Step 1: Install Snakemake and Snakedeploy

Snakemake and Snakedeploy are best installed via the Conda package manager. It is recommended to install conda via Miniforge. Run

conda create -c conda-forge -c bioconda -c nodefaults --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

For other installation methods, refer to the Snakemake and Snakedeploy documentation.

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/davelunt/NemaTree . --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.

Configuration

Use the config/config.yaml file to configure the analysis. You shouldn’t need to change other files and should try not to edit anything in the workflow directory.

Help

The documentation in docs/ contains some more extensive help and advice:

  • installation: Information on installing the workflow and dependencies

  • configure: Information on the config.yaml file

  • sequence_prep: Information on preparing sequences to add

  • alignments: Information on how sequence alignments are processed

  • tree_formatting: Information on tree formatting and rooting

  • misc: Extra thoughts and info

Workflow parameters

The following table is automatically parsed from the workflow’s config.schema.y(a)ml file.

Parameter

Type

Description

Required

Default

samples

string

yes

Linting and formatting

Linting results
  1/home/runner/work/snakemake-workflow-catalog/snakemake-workflow-catalog/.pixi/envs/default/lib/python3.13/site-packages/google/auth/transport/grpc.py:44: FutureWarning: grpcio < 1.83.0 does not support Post-Quantum Cryptography (PQC). Support for non-PQC environments is deprecated. In October 2026, google-auth will raise its minimum requirements to enforce grpcio >= 1.83.0. For more details on Google Cloud's post-quantum security migration, visit: https://cloud.google.com/security/resources/post-quantum-cryptography
  2  warnings.warn(
  3Lints for rule clean_supplied_fasta (line 4, /tmp/tmpclj5r7ej/workflow/rules/qc.smk):
  4    * Specify a conda environment or container for each rule.:
  5      This way, the used software for each specific step is documented, and the
  6      workflow can be executed on any machine without prerequisites.
  7      Also see:
  8      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
  9      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 10
 11Lints for rule minlength (line 21, /tmp/tmpclj5r7ej/workflow/rules/qc.smk):
 12    * No log directive defined:
 13      Without a log directive, all output will be printed to the terminal. In
 14      distributed environments, this means that errors are harder to discover.
 15      In local environments, output of concurrent jobs will be mixed and become
 16      unreadable.
 17      Also see:
 18      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
 19    * Specify a conda environment or container for each rule.:
 20      This way, the used software for each specific step is documented, and the
 21      workflow can be executed on any machine without prerequisites.
 22      Also see:
 23      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 24      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 25
 26Lints for rule mafft_add_seqs (line 7, /tmp/tmpclj5r7ej/workflow/rules/alignment.smk):
 27    * No log directive defined:
 28      Without a log directive, all output will be printed to the terminal. In
 29      distributed environments, this means that errors are harder to discover.
 30      In local environments, output of concurrent jobs will be mixed and become
 31      unreadable.
 32      Also see:
 33      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
 34    * Specify a conda environment or container for each rule.:
 35      This way, the used software for each specific step is documented, and the
 36      workflow can be executed on any machine without prerequisites.
 37      Also see:
 38      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 39      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 40
 41Lints for rule check_seqs_added (line 19, /tmp/tmpclj5r7ej/workflow/rules/alignment.smk):
 42    * No log directive defined:
 43      Without a log directive, all output will be printed to the terminal. In
 44      distributed environments, this means that errors are harder to discover.
 45      In local environments, output of concurrent jobs will be mixed and become
 46      unreadable.
 47      Also see:
 48      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
 49    * Specify a conda environment or container for each rule.:
 50      This way, the used software for each specific step is documented, and the
 51      workflow can be executed on any machine without prerequisites.
 52      Also see:
 53      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 54      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 55
 56Lints for rule remove_duplicate_names (line 33, /tmp/tmpclj5r7ej/workflow/rules/alignment.smk):
 57    * No log directive defined:
 58      Without a log directive, all output will be printed to the terminal. In
 59      distributed environments, this means that errors are harder to discover.
 60      In local environments, output of concurrent jobs will be mixed and become
 61      unreadable.
 62      Also see:
 63      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
 64    * Specify a conda environment or container for each rule.:
 65      This way, the used software for each specific step is documented, and the
 66      workflow can be executed on any machine without prerequisites.
 67      Also see:
 68      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 69      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 70
 71Lints for rule CIAlign_remove_short_seqs (line 45, /tmp/tmpclj5r7ej/workflow/rules/alignment.smk):
 72    * No log directive defined:
 73      Without a log directive, all output will be printed to the terminal. In
 74      distributed environments, this means that errors are harder to discover.
 75      In local environments, output of concurrent jobs will be mixed and become
 76      unreadable.
 77      Also see:
 78      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
 79    * Specify a conda environment or container for each rule.:
 80      This way, the used software for each specific step is documented, and the
 81      workflow can be executed on any machine without prerequisites.
 82      Also see:
 83      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 84      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
 85
 86Lints for rule CIAlign_remove_divergent_trim (line 65, /tmp/tmpclj5r7ej/workflow/rules/alignment.smk):
 87    * No log directive defined:
 88      Without a log directive, all output will be printed to the terminal. In
 89      distributed environments, this means that errors are harder to discover.
 90      In local environments, output of concurrent jobs will be mixed and become
 91      unreadable.
 92      Also see:
 93      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
 94    * Specify a conda environment or container for each rule.:
 95      This way, the used software for each specific step is documented, and the
 96      workflow can be executed on any machine without prerequisites.
 97      Also see:
 98      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
 99      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
100
101Lints for rule iqtree (line 6, /tmp/tmpclj5r7ej/workflow/rules/trees.smk):
102    * No log directive defined:
103      Without a log directive, all output will be printed to the terminal. In
104      distributed environments, this means that errors are harder to discover.
105      In local environments, output of concurrent jobs will be mixed and become
106      unreadable.
107      Also see:
108      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
109    * Specify a conda environment or container for each rule.:
110      This way, the used software for each specific step is documented, and the
111      workflow can be executed on any machine without prerequisites.
112      Also see:
113      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
114      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
115    * Param prefix is a prefix of input or output file but hardcoded:
116      If this is meant to represent a file path prefix, it will fail when
117      running workflow in environments without a shared filesystem. Instead,
118      provide a function that infers the appropriate prefix from the input or
119      output file, e.g.: lambda w, input: os.path.splitext(input[0])[0]
120      Also see:
121      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#non-file-parameters-for-rules
122      https://snakemake.readthedocs.io/en/stable/tutorial/advanced.html#tutorial-input-functions
123
124Lints for rule toytree_plot (line 32, /tmp/tmpclj5r7ej/workflow/rules/trees.smk):
125    * No log directive defined:
126      Without a log directive, all output will be printed to the terminal. In
127      distributed environments, this means that errors are harder to discover.
128      In local environments, output of concurrent jobs will be mixed and become
129      unreadable.
130      Also see:
131      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
132    * Specify a conda environment or container for each rule.:
133      This way, the used software for each specific step is documented, and the
134      workflow can be executed on any machine without prerequisites.
135      Also see:
136      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
137      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
138
139Lints for rule seq_stats_initial (line 6, /tmp/tmpclj5r7ej/workflow/rules/reports.smk):
140    * No log directive defined:
141      Without a log directive, all output will be printed to the terminal. In
142      distributed environments, this means that errors are harder to discover.
143      In local environments, output of concurrent jobs will be mixed and become
144      unreadable.
145      Also see:
146      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
147    * Specify a conda environment or container for each rule.:
148      This way, the used software for each specific step is documented, and the
149      workflow can be executed on any machine without prerequisites.
150      Also see:
151      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
152      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
153
154Lints for rule plot_seq_len (line 17, /tmp/tmpclj5r7ej/workflow/rules/reports.smk):
155    * No log directive defined:
156      Without a log directive, all output will be printed to the terminal. In
157      distributed environments, this means that errors are harder to discover.
158      In local environments, output of concurrent jobs will be mixed and become
159      unreadable.
160      Also see:
161      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
162    * Specify a conda environment or container for each rule.:
163      This way, the used software for each specific step is documented, and the
164      workflow can be executed on any machine without prerequisites.
165      Also see:
166      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
167      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
168
169Lints for rule plot_alnseq_len (line 30, /tmp/tmpclj5r7ej/workflow/rules/reports.smk):
170    * No log directive defined:
171      Without a log directive, all output will be printed to the terminal. In
172      distributed environments, this means that errors are harder to discover.
173      In local environments, output of concurrent jobs will be mixed and become
174      unreadable.
175      Also see:
176      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
177    * Specify a conda environment or container for each rule.:
178      This way, the used software for each specific step is documented, and the
179      workflow can be executed on any machine without prerequisites.
180      Also see:
181      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
182      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
183
184Lints for rule AMAS_alignment_stats (line 42, /tmp/tmpclj5r7ej/workflow/rules/reports.smk):
185    * No log directive defined:
186      Without a log directive, all output will be printed to the terminal. In
187      distributed environments, this means that errors are harder to discover.
188      In local environments, output of concurrent jobs will be mixed and become
189      unreadable.
190      Also see:
191      https://snakemake.readthedocs.io/en/stable/snakefiles/rules.html#log-files
192    * Specify a conda environment or container for each rule.:
193      This way, the used software for each specific step is documented, and the
194      workflow can be executed on any machine without prerequisites.
195      Also see:
196      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#integrated-package-management
197      https://snakemake.readthedocs.io/en/latest/snakefiles/deployment.html#running-jobs-in-containers
198
199Lints for rule CIAlign_aln_statsvisuals (line 53, /tmp/tmpclj5r7ej/workflow/rules/reports.smk):
200    * No log directive defined:
201
202... (truncated)
Formatting results
 1[DEBUG] 
 2[WARNING] In file "/tmp/tmpclj5r7ej/workflow/rules/alignment.smk":  Keyword "input" at line 9 has comments under a value.
 3	PEP8 recommends block comments appear before what they describe
 4(see https://www.python.org/dev/peps/pep-0008/#id30)
 5[DEBUG] In file "/tmp/tmpclj5r7ej/workflow/rules/alignment.smk":  Formatted content is different from original
 6[DEBUG] 
 7[DEBUG] In file "/tmp/tmpclj5r7ej/workflow/Snakefile":  Formatted content is different from original
 8[DEBUG] 
 9[DEBUG] In file "/tmp/tmpclj5r7ej/workflow/rules/common.smk":  Formatted content is different from original
10[DEBUG] 
11[DEBUG] In file "/tmp/tmpclj5r7ej/workflow/rules/qc.smk":  Formatted content is different from original
12[DEBUG] 
13[DEBUG] In file "/tmp/tmpclj5r7ej/workflow/rules/trees.smk":  Formatted content is different from original
14[DEBUG] 
15[DEBUG] In file "/tmp/tmpclj5r7ej/workflow/rules/reports.smk":  Formatted content is different from original
16[INFO] 6 file(s) would be changed 😬
17
18snakefmt version: 0.11.5