Mercurial > repos > rliterman > csp2
diff csp2-snp.xml @ 69:33d812a61356
planemo upload commit 2e9511a184a1ca667c7be0c6321a36dc4e3d116d
author | jpayne |
---|---|
date | Tue, 18 Mar 2025 17:55:14 -0400 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/csp2-snp.xml Tue Mar 18 17:55:14 2025 -0400 @@ -0,0 +1,162 @@ +<tool id="csp2-snp" name="CSP2 (SNP Pipeline Mode)" version="0.9.7_Dev21"> + <description>Run SNP Pipeline analysis on isolates using one or more references.</description> + <requirements> + <requirement type="package" version="24.10.1">nextflow</requirement> + <requirement type="package" version="1.5.8">micromamba</requirement> + </requirements> + <version_command>nextflow -version</version_command> + <command detect_errors="aggressive"><![CDATA[ +mkdir -p queries references +#set readext="" +#for $reads in $query.coll +#if $hasattr($reads, "is_of_type") and $reads.is_of_type("fasta") + && ln -sf '${reads}' 'queries/${reads.element_identifier}.fasta' +#else if $reads.forward.is_of_type("fastq.gz","fastqsanger.gz") + #set readext="fastq.gz" + && ln -sf '${reads.forward}' 'queries/${reads.forward.element_identifier}_1.fastq.gz' + && ln -sf '${reads.reverse}' 'queries/${reads.reverse.element_identifier}_2.fastq.gz' +#else if $reads.forward.is_of_type("fastq.bz2", "fastqsanger.bz2") + #set readext="fastq.bz2" + && ln -sf '${reads.forward}' 'queries/${reads.forward.element_identifier}_1.fastq.bz2' + && ln -sf '${reads.reverse}' 'queries/${reads.reverse.element_identifier}_2.fastq.bz2' +#else + #set readext="fastq" + && ln -sf '${reads.forward}' 'queries/${reads.forward.element_identifier}_1.fastq' + && ln -sf '${reads.reverse}' 'queries/${reads.reverse.element_identifier}_2.fastq' +#end if +#end for + && echo "*** Files in queries directory: ***" + && ln -sf '$source.reference' 'references/${source.reference.element_identifier}.fasta' + && nextflow run + ${__tool_directory__}/CSP2/CSP2.nf -profile csp2_galaxy + --runmode snp + #if $query.query_select == 'reads' + --reads queries + --readext $readext + --forward "_1.${readext}" + --reverse "_2.${readext}" + #else + --fasta queries + #end if + --ref_fasta 'references/${source.reference.element_identifier}.fasta' + --min_cov $opt.min_cov + --min_iden $opt.min_iden + --min_len $opt.min_len + --ref_edge $opt.ref_edge + --query_edge $opt.query_edge + --dwin $opt.dwin + --wsnps $opt.wsnps + --out CSP2_SNP_Output + && echo "*** Files in output directory: ***" + && ls -lah CSP2_SNP_Output + && echo "*** Nextflow log follows: ***" + && cat .nextflow.log +]]> + </command> + <inputs> + <conditional name="source"> + <param name="source_select" type="select" label="Use a curated GalaxyTrakr reference or a reference from your history"> + <option value="curated">Use a GalaxyTrakr reference</option> + <option value="history">Use a reference from your history</option> + </param> + <when value="curated"> + <param name="reference" type="select" label="Select reference fasta"> + <options from_data_table="all_fasta"> + <filter type="sort_by" column="2"/> + <validator type="no_options" message="No assemblies are available for the selected input dataset"/> + </options> + </param> + </when> + <when value="history"> + <param type="data" name="reference" format="fasta" label="Select reference FASTA"/> + </when> + </conditional> + <conditional name="query"> + <param name="query_select" type="select" label="Screen a list of paired-reads or a list of assemblies"> + <option value="reads">Screen a list of paired reads</option> + <option value="assemblies">Screen a list of assemblies</option> + </param> + <when value="reads"> + <param label="Paired reads" name="coll" type="data_collection" format="fastq,fastqsanger,fastq.gz,fastqsanger.gz,fastq.bz2,fastqsanger.bz2" collection_type="list:paired" /> + </when> + <when value="assemblies"> + <param label="Assemblies" name="coll" type="data_collection" format="fasta" collection_type="list" /> + </when> + </conditional> + <section name="opt" title="Advanced options..."> + <param name="min_cov" type="float" value="85" label="Minimum reference genome coverage to proceed with distance estimation" optional="true" /> + <param name="min_iden" type="float" value="99" label="Minimum alignment percent identity to detect SNPs" optional="true" /> + <param name="min_len" type="integer" value="500" label="Minimum alignment length to detect SNPs" optional="true" /> + <param name="ref_edge" type="integer" value="150" label="Prune SNPs within this many bases of reference contig edge" optional="true" /> + <param name="query_edge" type="integer" value="150" label="Prune SNPs within this many bases of query contig edge" optional="true" /> + <param name="dwin" type="text" value="1000,125,15" label="Comma-separated set of window sizes for SNP density filtration (Set to 0 to disable density filtration)" optional="true" /> + <param name="wsnps" type="text" value="3,2,1" label="Comma-separated list of maximum SNP counts per density window" optional="true" /> + </section> + </inputs> + <outputs> + <!-- <data name="nextflow_log" format="txt" label="Nextflow Log" from_work_dir="Nextflow_Log.txt" /> --> + <data name="isolate_data" format="tabular" label="Isolate Data" from_work_dir="CSP2_SNP_Output/Isolate_Data.tsv" /> + <data name="raw_mummer" format="tabular" label="Raw MUMmer Output" from_work_dir="CSP2_SNP_Output/Raw_MUMmer_Summary.tsv" /> + <!-- <data name="csp2_zip" format="zip" label="Zipped Output" from_work_dir="CSP2_Output.zip" /> --> + <collection name="reference_results" type="list:list"> + <discover_datasets pattern="(?P<name>.+)/CSP2_SNP_Pipeline\.log" format="txt" visible="true" directory="./CSP2_SNP_Output/SNP_Analysis" /> + <discover_datasets pattern="(?P<name>.+)/Reference_Screening\.tsv" format="tabular" visible="true" directory="./CSP2_SNP_Output/SNP_Analysis" /> + <discover_datasets pattern="(?P<name>.+)/snp_distance_matrix_preserved\.tsv" format="tabular" visible="true" directory="./CSP2_SNP_Output/SNP_Analysis" /> + <discover_datasets pattern="(?P<name>.+)/snp_distance_pairwise_preserved\.tsv" format="tabular" visible="true" directory="./CSP2_SNP_Output/SNP_Analysis" /> + <discover_datasets pattern="(?P<name>.+)/snpma_preserved\.fasta" format="fasta" visible="true" directory="./CSP2_SNP_Output/SNP_Analysis" /> + </collection> + </outputs> + <tests> + <test> + <param name="source_select" value="history" /> + <param name="reference" value="assemblies/Sample_A.fasta" /> + <param name="query_select" value="assemblies" /> + <param name="coll"> + <collection type="list"> + <!-- <element name="Sample_A" value="assemblies/Sample_A.fasta" /> --> + <element name="Sample_B" value="assemblies/Sample_B.fasta" /> + <element name="Sample_C" value="assemblies/Sample_C.fasta" /> + <element name="Sample_D" value="assemblies/Sample_D.fasta" /> + <element name="Sample_E" value="assemblies/Sample_E.fasta" /> + <element name="Sample_F" value="assemblies/Sample_F.fasta" /> + <element name="Sample_G" value="assemblies/Sample_G.fasta" /> + <element name="Sample_H" value="assemblies/Sample_H.fasta" /> + <element name="Sample_I" value="assemblies/Sample_I.fasta" /> + <element name="Sample_J" value="assemblies/Sample_J.fasta" /> + <element name="Sample_K" value="assemblies/Sample_K.fasta" /> + <element name="Sample_L" value="assemblies/Sample_L.fasta" /> + <element name="Sample_M" value="assemblies/Sample_M.fasta" /> + <element name="Sample_N" value="assemblies/Sample_N.fasta" /> + <element name="Sample_O" value="assemblies/Sample_O.fasta" /> + </collection> + </param> + + <output name="isolate_data" value="Isolate_Data.tsv" /> + </test> + <test> + <param name="source_select" value="history" /> + <param name="reference" value="assemblies/Sample_A.fasta" ftype="fasta" /> + <param name="query_select" value="reads" /> + <param name="coll"> + <collection type="list:paired"> + <element name="Sample_A"> + <collection type="paired"> + <element name="forward" value="reads/Week_42_Reads_1.fq.gz" ftype="fastqsanger.gz" /> + <element name="reverse" value="reads/Week_42_Reads_2.fq.gz" ftype="fastqsanger.gz" /> + </collection> + </element> + </collection> + </param> + <output name="screening_results" value="Screening_Results.tsv" /> + <output name="isolate_data" value="Isolate_Data.tsv" /> + </test> + </tests> + <help> + This tool takes query assemblies and reference assemblies and calculates the pairwise distance between each query/reference combination. If no reference is provided, all queries are compared to all other queries. + </help> + <citations> + <citation type="doi">10.XXXX/placeholder.doi</citation> + <citation type="bibtex">@article{example2024,title={CFSAN SNP Pipeline 2 (CSP2): a pipeline for fast and accurate SNP distance estimation from bacterial genome assemblies.},author={Doe, John and Smith, Jane},journal={Submitted},year={2024}} + </citation> + </citations> +</tool>