aomlomics / tourmaline

Amplicon sequence processing workflow using QIIME 2 and Snakemake
BSD 3-Clause "New" or "Revised" License
42 stars 19 forks source link

rule check_inputs_params_se: missing param #117

Closed rckarns8 closed 8 months ago

rckarns8 commented 8 months ago

@ksilnoaa I found that the snakefile was missing a param definition at line 375:

classifymethod=config["classify_method"]

This was resulting in an error on my run a follows:

RuleException in rule check_inputs_params_se in file /Users/rachaelkarns/Desktop/sedtrap_tourmaline_16S/Snakefile, line 371:
AttributeError: 'Params' object has no attribute 'classifymethod', when formatting the following:
if [ -r '01-imported/fastq_se.qza' ]; then     echo 'OK: FASTQ archive 01-imported/fastq_se.qza found; FASTQ manifest file 00-data/manifest_se.csv not required.'; elif [ -r '00-data/manifest_se.csv' ]; then     echo 'OK: FASTQ manifest file 00-data/manifest_se.csv found; it will be used to create FASTQ archive 01-imported/fastq_se.qza.'; else echo 'Error: FASTQ sequence data not found; either 00-data/manifest_se.csv or 01-imported/fastq_se.qza is required.' && exit 1; fi; if [ {params.classifymethod} = naive-bayes ]; then     if [ -r '01-imported/classifier.qza' ]; then         echo 'OK: Reference sequences classifier 01-imported/classifier.qza found; reference sequences FASTA file 00-data/refseqs.fna not required.';     elif [ -r '01-imported/refseqs.qza' ]; then         echo 'OK: Reference sequences archive 01-imported/refseqs.qza found; reference sequences FASTA file 00-data/refseqs.fna not required.';     elif [ -r '00-data/refseqs.fna' ]; then         echo 'OK: Reference sequences FASTA file 00-data/refseqs.fna found; it will be used to create reference sequences archive 01-imported/refseqs.qza.';     else echo 'Error: Reference sequences not found; either 01-imported/classifier.qza or 00-data/refseqs.fna or 01-imported/refseqs.qza is required.' && exit 1;     fi; elif [ -r '01-imported/refseqs.qza' ]; then     echo 'OK: Reference sequences archive 01-imported/refseqs.qza found; reference sequences FASTA file 00-data/refseqs.fna not required.'; elif [ -r '00-data/refseqs.fna' ]; then     echo 'OK: Reference sequences FASTA file 00-data/refseqs.fna found; it will be used to create reference sequences archive 01-imported/refseqs.qza.'; else echo 'Error: Reference sequences not found; either 00-data/refseqs.fna or 01-imported/refseqs.qza is required.' && exit 1; fi; if [ {params.classifymethod} != naive-bayes ]; then     if [ -r '01-imported/reftax.qza' ]; then         echo 'OK: Reference taxonomy archive 01-imported/reftax.qza found; reference taxonomy file 00-data/reftax.tsv not required.';     elif [ -r '00-data/reftax.tsv' ]; then         echo 'OK: Reference taxonomy file 00-data/reftax.tsv found; it will be used to create reference taxonomy archive 01-imported/reftax.qza.';     else echo 'Error: Reference taxonomy not found; either 00-data/reftax.tsv or 01-imported/reftax.qza is required.' && exit 1;     fi; fi; if grep -q ^{params.column}$ {input}; then     echo 'OK: Metadata contains the column "{params.column}" that is specified as beta_group_column in config.yaml.'; else echo 'Error: Metadata does not contain the column "{params.column}" that is specified as beta_group_column in config.yaml.' && exit 1; fi
ksilnoaa commented 8 months ago

Ah I see the issue, it was a bug for SE analyses. Now updated, let me know if you still have issues.