lundi 20 septembre 2021

How to embed auxiliary Snakemake workflows into main workflow structure

The Snakemake documentation defines how to setup the directory structure of a workflow. This is useful for easier understanding and deployment using snakedeploy.

My question is how to embed auxiliary workflows, which are functionally tightly connected to the main workflow but fulfill a different goal, with this approach. We would, for example, want to do this with V-pipe, where the main workflow processes sequencing data, and auxiliary workflows would download sequencing data or run a tool benchmark.

The following approaches come to mind:

  • store all auxiliary workflows in external git repositories. This would be a clean solution (and snakedeploy could readily be used) but adds the overhead of having to maintain multiple code sources.
  • integrate the auxiliary workflows into the main workflow. This would make the main workflow more complex and is not always feasible.
  • put all auxiliary workflows into 'resources/auxiliary_workflows/'. This would allow all workflows to live in a single codebase while not unnecessarily increasing complexity of the main workflow. However, deploying the auxiliary workflows would be slightly more complicated.

Do you have a suggestion which of these approaches would be best suited for our needs, or have an entirely different approach in mind?

Aucun commentaire:

Enregistrer un commentaire