annotate csp2_screen.xml @ 1:9df7494b1398

"planemo upload"
author rliterman
date Mon, 02 Dec 2024 11:24:02 -0500
parents
children 757b7dcd0ee6
rev   line source
rliterman@1 1 <tool id="csp2-screen" name="CSP2 (Screening Mode)" version="0.9.7">
rliterman@1 2 <description>Screen query assemblies against reference assemblies</description>
rliterman@1 3 <requirements>
rliterman@1 4 <requirement type="package" version="24.10.1">nextflow</requirement>
rliterman@1 5 <requirement type="package" version="2.0.2">micromamba</requirement>
rliterman@1 6 </requirements>
rliterman@1 7 <command detect_errors="aggressive"><![CDATA[
rliterman@1 8 export CSP2_DIR=\$PWD;
rliterman@1 9 mkdir -p \$CSP2_DIR/queries \$CSP2_DIR/references;
rliterman@1 10
rliterman@1 11 if [ -n "$query_fasta" ] && [ "$query_fasta" != "None" ]; then
rliterman@1 12 #for query in $query_fasta:
rliterman@1 13 ln -sf ${query} \$CSP2_DIR/queries/${query.element_identifier};
rliterman@1 14 #end for
rliterman@1 15 export QUERY_FASTA_ARG="--fasta \$CSP2_DIR/queries";
rliterman@1 16 else
rliterman@1 17 export QUERY_FASTA_ARG="";
rliterman@1 18 fi;
rliterman@1 19
rliterman@1 20 if [ -n "$query_reads" ] && [ "$query_reads" != "None" ]; then
rliterman@1 21 #for query in $query_reads:
rliterman@1 22 ln -sf ${query} \$CSP2_DIR/queries/${query.element_identifier};
rliterman@1 23 #end for
rliterman@1 24 export QUERY_READS_ARG="--reads \$CSP2_DIR/queries";
rliterman@1 25 else
rliterman@1 26 export QUERY_READS_ARG="";
rliterman@1 27 fi;
rliterman@1 28
rliterman@1 29 if [ -n "$ref_fasta" ] && [ "$ref_fasta" != "None" ]; then
rliterman@1 30 #for ref in $ref_fasta:
rliterman@1 31 ln -sf ${ref} \$CSP2_DIR/references/${ref.element_identifier};
rliterman@1 32 #end for
rliterman@1 33 export REF_FASTA_ARG="--ref_fasta \$CSP2_DIR/references";
rliterman@1 34 else
rliterman@1 35 export REF_FASTA_ARG="";
rliterman@1 36 fi;
rliterman@1 37
rliterman@1 38 if [ -n "$ref_reads" ] && [ "$ref_reads" != "None" ]; then
rliterman@1 39 #for ref in $ref_reads:
rliterman@1 40 ln -sf ${ref} \$CSP2_DIR/references/${ref.element_identifier};
rliterman@1 41 #end for
rliterman@1 42 export REF_READS_ARG="--ref_reads \$CSP2_DIR/references";
rliterman@1 43 else
rliterman@1 44 export REF_READS_ARG="";
rliterman@1 45 fi;
rliterman@1 46
rliterman@1 47 if [ -n "$trim_name" ] && [ "$trim_name" != "None" ]; then
rliterman@1 48 export TRIM_ARG="--trim_name $trim_name";
rliterman@1 49 else
rliterman@1 50 export TRIM_ARG="";
rliterman@1 51 fi;
rliterman@1 52
rliterman@1 53 if [ -n "$ref_id" ] && [ "$ref_id" != "None" ]; then
rliterman@1 54 export REF_ID_ARG="--ref_id $ref_id";
rliterman@1 55 else
rliterman@1 56 export REF_ID_ARG="";
rliterman@1 57 fi;
rliterman@1 58
rliterman@1 59 nextflow run ${__tool_directory__}/CSP2/CSP2.nf -profile csp2_galaxy --runmode screen \$QUERY_FASTA_ARG \$REF_FASTA_ARG \$QUERY_READS_ARG \$REF_READS_ARG \$REF_ID_ARG \$TRIM_ARG --readext $readext --forward $forward --reverse $reverse --ref_readext $readext --ref_forward $forward --ref_reverse $reverse --min_cov $min_cov --min_iden $min_iden --min_len $min_len --ref_edge $ref_edge --query_edge $query_edge --dwin $dwin --wsnps $wsnps --cores 8 --out \$CSP2_DIR/CSP2_Screen_Output;
rliterman@1 60 ]]>
rliterman@1 61 </command>
rliterman@1 62 <inputs>
rliterman@1 63 <param name="query_fasta" type="data" format="fasta" value="" label="Query assemblies" multiple="true" optional="true" />
rliterman@1 64 <param name="ref_fasta" type="data" format="fasta" value="" label="Reference assemblies" multiple="true" optional="true" />
rliterman@1 65 <param name="query_reads" type="data" format="fastq,fastq.gz" value="" label="Query reads" multiple="true" optional="true" />
rliterman@1 66 <param name="ref_reads" type="data" format="fastq,fastq.gz" value="" label="Reference reads" multiple="true" optional="true" />
rliterman@1 67 <param name="min_cov" type="float" value="85" label="Minimum reference genome coverage to proceed with distance estimation" optional="true" />
rliterman@1 68 <param name="min_iden" type="float" value="99" label="Minimum alignment percent identity to detect SNPs" optional="true" />
rliterman@1 69 <param name="min_len" type="integer" value="500" label="Minimum alignment length to detect SNPs" optional="true" />
rliterman@1 70 <param name="ref_edge" type="integer" value="150" label="Prune SNPs within this many bases of reference contig edge" optional="true" />
rliterman@1 71 <param name="query_edge" type="integer" value="150" label="Prune SNPs within this many bases of query contig edge" optional="true" />
rliterman@1 72 <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" />
rliterman@1 73 <param name="wsnps" type="text" value="3,2,1" label="Comma-separated list of maximum SNP counts per density window" optional="true" />
rliterman@1 74 <param name="readext" type="text" value="fastq.gz" label="Read extension format (e.g., fastq.gz)" optional="true" />
rliterman@1 75 <param name="forward" type="text" value="_1.fastq.gz" label="Forward read suffix (e.g. _1.fastq.gz)" optional="true" />
rliterman@1 76 <param name="reverse" type="text" value="_2.fastq.gz" label="Forward read suffix (e.g. _2.fastq.gz)" optional="true" />
rliterman@1 77 <param name="trim_name" type="text" value="" label="Text to remove from all file names (e.g., _contigs_skesa)" optional="true" />
rliterman@1 78 <param name="ref_id" type="text" value="" label="Comma-separated list of desired Reference IDs (e.g., Sample_A,Sample_B)" optional="true" />
rliterman@1 79 </inputs>
rliterman@1 80 <outputs>
rliterman@1 81 <data name="screening_results" format="tabular" label="Screening Results" from_work_dir="CSP2_Screen_Output/Screening_Results.tsv" />
rliterman@1 82 <data name="isolate_data" format="tabular" label="Isolate Data" from_work_dir="CSP2_Screen_Output/Isolate_Data.tsv" />
rliterman@1 83 </outputs>
rliterman@1 84 <tests>
rliterman@1 85 <test>
rliterman@1 86 <param name="query_fasta">
rliterman@1 87 <collection type="list">
rliterman@1 88 <element name="Sample_A" value="assemblies/Sample_A.fasta" />
rliterman@1 89 <element name="Sample_B" value="assemblies/Sample_B.fasta" />
rliterman@1 90 <element name="Sample_C" value="assemblies/Sample_C.fasta" />
rliterman@1 91 <element name="Sample_D" value="assemblies/Sample_D.fasta" />
rliterman@1 92 <element name="Sample_E" value="assemblies/Sample_E.fasta" />
rliterman@1 93 <element name="Sample_F" value="assemblies/Sample_F.fasta" />
rliterman@1 94 <element name="Sample_G" value="assemblies/Sample_G.fasta" />
rliterman@1 95 <element name="Sample_H" value="assemblies/Sample_H.fasta" />
rliterman@1 96 <element name="Sample_I" value="assemblies/Sample_I.fasta" />
rliterman@1 97 <element name="Sample_J" value="assemblies/Sample_J.fasta" />
rliterman@1 98 <element name="Sample_K" value="assemblies/Sample_K.fasta" />
rliterman@1 99 <element name="Sample_L" value="assemblies/Sample_L.fasta" />
rliterman@1 100 <element name="Sample_M" value="assemblies/Sample_M.fasta" />
rliterman@1 101 <element name="Sample_N" value="assemblies/Sample_N.fasta" />
rliterman@1 102 <element name="Sample_O" value="assemblies/Sample_O.fasta" />
rliterman@1 103 </collection>
rliterman@1 104 </param>
rliterman@1 105 <param name="query_reads">
rliterman@1 106 <collection type="list">
rliterman@1 107 <element name="Forward" value="reads/Week_42_Reads_1.fq.gz" />
rliterman@1 108 <element name="Reverse" value="reads/Week_42_Reads_2.fq.gz" />
rliterman@1 109 </collection>
rliterman@1 110 </param>
rliterman@1 111
rliterman@1 112 <param name="ref_id" value="Sample_A,Sample_B" />
rliterman@1 113 <param name="readext" value="fq.gz" />
rliterman@1 114 <param name="forward" value="_1.fq.gz" />
rliterman@1 115 <param name="reverse" value="_2.fq.gz" />
rliterman@1 116
rliterman@1 117 <output name="screening_results" value="Screening_Results.tsv" />
rliterman@1 118 <output name="isolate_data" value="Isolate_Data.tsv" />
rliterman@1 119 </test>
rliterman@1 120 </tests>
rliterman@1 121 <help>
rliterman@1 122 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.
rliterman@1 123 </help>
rliterman@1 124 <citations>
rliterman@1 125 <citation type="doi">10.XXXX/placeholder.doi</citation>
rliterman@1 126 <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}}
rliterman@1 127 </citation>
rliterman@1 128 </citations>
rliterman@1 129 </tool>