diff --git a/workflows/subworfklows/README.md b/workflows/subworfklows/README.md new file mode 100644 index 0000000000000000000000000000000000000000..b960b6cdf88f60e0ebdc232f77e860d956ca6fc7 --- /dev/null +++ b/workflows/subworfklows/README.md @@ -0,0 +1,4 @@ +# Snakemake subworkflows + +Similar to tools, subworkflows cannot be used directly but need to be called in a higher Snakefile +by setting up the required variables. diff --git a/workflows/subworfklows/graphlan_from_metaphlan2/SnakeFile b/workflows/subworfklows/graphlan_from_metaphlan2/SnakeFile new file mode 100644 index 0000000000000000000000000000000000000000..dfd7278541c6e45454f5bb3cfa487759d7428d09 --- /dev/null +++ b/workflows/subworfklows/graphlan_from_metaphlan2/SnakeFile @@ -0,0 +1,30 @@ +configfile: "config.yaml" + +""" +This subworkflow need to be called to be used by specifying: +- __graphlan_from_metaphlan2_input +- __graphlan_from_metaphlan2_output +- __graphlan_from_metaphlan2_output_dir +""" + +# ==== Rule paths ==== +__export2graphlan_rules = "../../tools/metaphlan2/metaphlan2/metaphlan2.rules" +__graphlan_annotate_rules = "../../tools/metaphlan2/metaphlan2_merge/metaphlan2_merge.rules" +__graphlan_rules = "../../tools/metaphlan2/metaphlan2_heatmap/metaphlan2_heatmap.rules" + +# ---- export2graphlan +__export2graphlan_input = __graphlan_from_metaphlan2_input +__export2graphlan_output_tree = __graphlan_from_metaphlan2_output + ".tree.txt" +__export2graphlan_output_annotation = __graphlan_from_metaphlan2_output + ".annot.txt" +include: __export2graphlan_rules + +# ---- graphlan_annotate +__graphlan_annotate_input_tree = __export2graphlan_output_tree +__graphlan_annotate_input_annotation = __export2graphlan_output_annotation +__graphlan_annotate_output = __graphlan_from_metaphlan2_output + ".annot.xml" +include: __graphlan_annotate_rules + +# ---- graphlan +__graphlan_input = __graphlan_annotate_output +__graphlan_output = __graphlan_from_metaphlan2_output +include: __graphlan_rules