adds workflows/qc, which has many of the same testing infrastructure as test, like get-data.sh, config.yaml, Snakefile.
workflows/qc/Snakefile is a modified version of the one in test, with changes implemented as described below
you can test the QC workflow by passing --workflow workflows/qc to the now-updated run_test.py. The most complete test would be this (build a new env, clean all data, submit to slurm, test the QC workflow):
workflows/qc/config.yaml now includes all of the references to be built that used to be in workflows/references/references_config.yaml
there is a new rules section in the config. This is where you can edit the params for each rule (see the config for examples). Importantly, you can make a change in the config file, and then run snakemake --list-params-changes to identify those rules now out-of-date due to differences in params from the cache. You can then force these to re-run by using:
the fastq_screen rule has been factored out into a separate rule that creates the fastq_screen_config.txt file. This in turn will build the bowtie2 indexes if needed. This works because the references snakefile is now include:d in the qc workflow.
I'm now pointing the references to a copy over in a references-test dir, so you can test index building without messing up the "real" indexes. I'd recommend starting by removing the wolbachia dir to see the effects (the fasta should be downloaded and the bowtie2 index should be created).
This PR makes a bunch of changes:
workflows/qc
, which has many of the same testing infrastructure astest
, like get-data.sh, config.yaml, Snakefile.workflows/qc/Snakefile
is a modified version of the one intest
, with changes implemented as described below--workflow workflows/qc
to the now-updatedrun_test.py
. The most complete test would be this (build a new env, clean all data, submit to slurm, test the QC workflow):Snakefile and config changes
workflows/qc/config.yaml
now includes all of the references to be built that used to be inworkflows/references/references_config.yaml
rules
section in the config. This is where you can edit the params for each rule (see the config for examples). Importantly, you can make a change in the config file, and then runsnakemake --list-params-changes
to identify those rules now out-of-date due to differences in params from the cache. You can then force these to re-run by using:fastq_screen
rule has been factored out into a separate rule that creates thefastq_screen_config.txt
file. This in turn will build the bowtie2 indexes if needed. This works because the references snakefile is nowinclude:
d in the qc workflow.