Adding workflows
Workflows are automatically added to the Workflow Catalog. This is done by regularly searching Github repositories for matching workflow structures. The catalog includes workflows based on the following criteria.
Generic workflows
- The workflow is contained in a public Github repository.
- The repository has a
README.md
file, containing the words "snakemake" and "workflow" (case insensitive). - The repository contains a workflow definition named either
Snakefile
orworkflow/Snakefile
. - If the repository contains a folder
rules
orworkflow/rules
, that folder must at least contain one file ending on.smk
. - The repository is small enough to be cloned into a Github Actions job (very large files should be handled via Git LFS, so that they can be stripped out during cloning).
- The repository is not blacklisted here.
Standardized Usage workflows
In order to additionally appear in the "standardized usage" area, repositories additionally have to:
- have their main workflow definition named
workflow/Snakefile
(unlike for plain inclusion (see above), which also allows justSnakefile
in the root of the repository), - provide configuration instructions under
config/README.md
- contain a
YAML
file.snakemake-workflow-catalog.yml
in their root directory, which configures the usage instructions displayed by this workflow catalog.
Typical content of the .snakemake-workflow-catalog.yml
file:
usage:
mandatory-flags: # optional definition of additional flags
desc: # describe your flags here in a few sentences (they will be inserted below the example commands)
flags: # put your flags here
software-stack-deployment: # definition of software deployment method (at least one of conda, singularity, or singularity+conda)
conda: true # whether pipeline works with --use-conda
singularity: true # whether pipeline works with --use-singularity
singularity+conda: true # whether pipeline works with --use-singularity --use-conda
report: true # add this to confirm that the workflow allows to use 'snakemake --report report.zip' to generate a report containing all results and explanations
Once included in the standardized usage area you can link directly to the usage instructions for your repository via the URL https://snakemake.github.io/snakemake-workflow-catalog?usage=<owner>/<repo>
. Do not forget to replace the <owner>
and <repo>
tags at the end of the URL.
Release handling
If your workflow provides Github releases, the catalog will always just scrape the latest non-preview release. Hence, in order to update your workflow's records here, you need to release a new version on Github.