Skip to content

Recipe rework to allow to redefine parameters and directives  #120

Description

@cimendes

Currently, the recipe module allows a recipe to by defined as a string of compoents, such as:

available_recipes = {
    "dengue": "integrity_coverage fastqc_trimmomatic filter_poly remove_host bowtie retrieve_mapped megahit",
}

To increase the flexibility of this feature, I suggest reworking how the recipes are implemented to allow the (re)definition of parameters and directives, tailoring each recipe to the purpose it's intended for. For this, there's two foreseeable options:

  1. Keep the recipe definition as a sting and implement a step in the engine to setup the directives and parameters. For example:

"test_recipe": "fastq trimmomatic spades={'params':{'A':2}}"

This would require the least changes to flowcraft's engine but it's a cumbersome solution for the implementation of complex recipes.

  1. Change de data structure of the recipe to a dictionary. It allows the integration of fairly complex processes but increases the complexity.

[{"input": {"process": "init", "lane": 1},
"output": {"process": "integrity_coverage", "lane": 1}},
{"input": {"process": "integrity_coverage", "lane": 1},
"output": {"process": "fastqc", "lane": 1}}
]

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions