rule docker_build:
    input:
        "Dockerfile_mixomics"
    shell:
        "docker build -t  ejprd/cakut_mixomics:0.1 -f Dockerfile_mixomics ."

# Below parameter in params assumes that you map docker with -v parameter a data folder that contains all relevant data
# If this option doesn't work then directly start Docker container from within the shell rule, but then remove the container rule.
rule diablo_plsda:
    input:
        "multi_omics_analysis.R"
    output:
        "multiomics_run"
    container:
        "docker://ejprd/cakut_mixomics:0.1"
    params:
        mapped_folder="/data/"
    shell:
        "mkdir multiomics_run && R -f multi_omics_analysis.R --args {params.mapped_folder}/mirnome_training_data_common_format.tsv,{params.mapped_folder}/peptidome_training_data_common_format.tsv {params.mapped_folder}/mirnome_validation_data_common_format.tsv,{params.mapped_folder}/peptidome_validation_data_common_format.tsv miRNome,peptidome multiomics_run diablo,multiomics_plsda"
