rule all:
    input:
        auspice = "auspice/v2_mers-cov.json"
rule files:
    params:
        input_mcc = "data/MERS_CoV_274_mcc.tree",
        auspice_config = "config/auspice_config.json"

files = rules.files.params

rule import_beast:
    message: "Importing BEAST MCC tree"
    input:
        mcc_tree = files.input_mcc
    output:
        node_data = "results/beast_data.json",
        tree = "results/tree.new"
    shell:
        """
        augur import beast \
            --mcc {input.mcc_tree} \
            --output-tree {output.tree} \
            --output-node-data {output.node_data}
        """

rule export:
    message: "Exporting data files for for auspice v2"
    input:
        tree = rules.import_beast.output.tree,
        beast_data = rules.import_beast.output.node_data,
        config = files.auspice_config
    output:
        auspice = rules.all.input.auspice
    shell:
        """
        augur export v2 \
            --tree {input.tree} \
            --node-data {input.beast_data} \
            --auspice-config {input.config} \
            --output {output.auspice};
        """

rule clean:
    message: "Removing directories: {params}"
    params:
        "results ",
        "auspice"
    shell:
        "rm -rfv {params}"
