Next changeset 1:365849f031fd (2023-06-05) |
Commit message:
"planemo upload" |
added:
cfsan_bettercallsal.xml |
cfsan_bettercallsal.xml |
diff -r 000000000000 -r a4b1ee4b68b1 cfsan_bettercallsal.xml |
cfsan_bettercallsal.xml |
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/cfsan_bettercallsal.xml Mon Jun 05 16:17:23 2023 -0400 @@ -0,0 +1,232 @@ +<tool id="cfsan_centriflaken" name="Centriflaken" version="0.2.0+galaxy0"> + <description>An automated pipeline to generate a MAG of interest (E.coli or Salmonella) and perform serotyping.</description> + <requirements> + <requirement type="package" version="22.04">nextflow</requirement> + <requirement type="package">graphviz</requirement> + </requirements> + <version_command>nextflow -version</version_command> + <command detect_errors="exit_code"><![CDATA[ + mkdir -p cpipes-input || exit 1; + pwd_path=\$(pwd); + #import re + #if (str($input_read_type_cond.input_read_type) == "single_long"): + #for _, $unpaired in enumerate($input_read_type_cond.input): + #set read1 = str($unpaired.name) + #if not str($unpaired.name).endswith(('.fastq', '.fastq.gz')): + #set read1_ext = re.sub('fastqsanger', 'fastq', str($unpaired.ext)) + #set read1 = str($unpaired.name) + str('.') + $read1_ext + #end if + ln -sf '$unpaired' './cpipes-input/$read1'; + #end for + #elif (str($input_read_type_cond.input_read_type) == "paired"): + #for _, $pair in enumerate($input_read_type_cond.input_pair) + #set read_R1 = re.sub('\:forward', '_forward', str($pair.forward.name)) + #set read_R2 = re.sub('\:reverse', '_reverse', str($pair.reverse.name)) + #set read_R1_ext = re.sub('fastqsanger', 'fastq', str($pair.forward.ext)) + #set read_R2_ext = re.sub('fastqsanger', 'fastq', str($pair.reverse.ext)) + #if not str($pair.forward.name).endswith(('.fastq', '.fastq.gz')): + #set read_R1 = $read_R1 + str('.') + $read_R1_ext + #end if + #if not str($pair.reverse.name).endswith(('.fastq', '.fastq.gz')): + #set read_R2 = $read_R2 + str('.') + $read_R2_ext + #end if + ln -sf '$pair.forward' './cpipes-input/$read_R1'; + ln -sf '$pair.reverse' './cpipes-input/$read_R2'; + #end for + #end if + $__tool_directory__/0.4.0/cpipes + --pipeline $input_read_type_cond.pipeline_cond.pipeline + #if ($input_read_type_cond.pipeline_cond.pipeline == "centriflaken"): + --fq_single_end true + --flye_genome_size '${genome_size}' + #if ($input_read_type_cond.pipeline_cond.long_read_platform == "nanopore_corr"): + --flye_nano_corr true --flye_nano_raw false + #elif ($input_read_type_cond.pipeline_cond.long_read_platform == "nanopore_hq"): + --flye_nano_hq true --flye_nano_raw false + #elif ($input_read_type_cond.pipeline_cond.long_read_platform == "pacbio_raw"): + --flye_pacbio_raw true --flye_nano_raw false + #elif ($input_read_type_cond.pipeline_cond.long_read_platform == "pacbio_corr"): + --flye_pacbio_corr true --flye_nano_raw false + #elif ($input_read_type_cond.pipeline_cond.long_read_platform == "pacbio_hifi"): + --flye_pacbio_hifi true --flye_nano_raw false + #end if + #elif ($input_read_type_cond.pipeline_cond.pipeline == "centriflaken_hy"): + #if (str($input_read_type_cond.input_read_type) == "single_long"): + --fq_single_end true + #elif (str($input_read_type_cond.input_read_type) == "paired"): + --fq_single_end false --fq2_suffix '${input_read_type_cond.fq2_suffix}' + #end if + #end if + --input \${pwd_path}/cpipes-input + --output \${pwd_path}/cpipes-output + --fq_suffix '${input_read_type_cond.fq_suffix}' + #if ($fq_filter_by_len != ""): + --fq_filter_by_len $fq_filter_by_len + #end if + --fq_filename_delim '${fq_filename_delim}' + --fq_filename_delim_idx $fq_filename_delim_idx + --centrifuge_extract_bug '${centrifuge_extract_bug}' + #if (str($input_read_type_cond.pipeline_cond.rm_dup_seqs) == "true"): + --seqkit_rmd..cted="true">conda</option> + <option value="cingularitygac">singularity</option> + </param> --> + </inputs> + <outputs> + <data name="multiqc_report" format="html" label="${input_read_type_cond.pipeline_cond.pipeline}: MultiQC Report on ${on_string}" from_work_dir="multiqc_report.html"/> + <collection name="assembled_mags" type="list" label="${input_read_type_cond.pipeline_cond.pipeline}: Assembled MAGs on ${on_string}"> + <discover_datasets pattern="(?P<name>.*)\.assembly_filtered_contigs\.fasta" ext="fasta" directory="kraken2_extract_contigs"/> + </collection> + </outputs> + <tests> + <!--Test 01: long reads--> + <test expect_num_outputs="2"> + <param name="input"> + <collection type="list"> + <element name="FAL11127.fastq.gz" value="FAL11127.fastq.gz" /> + <element name="FAL11341.fastq.gz" value="FAL11341.fastq.gz" /> + <element name="FAL11342.fastq.gz" value="FAL11342.fastq.gz" /> + </collection> + </param> + <param name="fq_suffix" value=".fastq.gz"/> + <output name="multiqc_report" file="multiqc_report.html" ftype="html" compare="sim_size"/> + <!-- <output name="assembled_mags" file="FAL11127.assembly_filtered.contigs.fasta" ftype="fasta" compare="sim_size"/> --> + </test> + </tests> + <help><![CDATA[ + +.. class:: infomark + +**Purpose** + +Centriflaken suite of automated data analysis pipelines are based on Nextflow DSL2 developed at CFSAN, FDA. These pipelines allow rapid +and effective construction of metagenomic assembled genomes (MAGs) to enable bacterial source-tracking. It is based on methods described in our +previous publication (Maguire *et al*, 2021. doi: https://doi.org/10.1371/journal.pone.0245172). + +---- + +.. class:: infomark + +**Testing and Validation** + +The CPIPES - Centriflaken Nextflow pipeline has been wrapped to make it work in Galaxy. It takes in either paired or unpaired short reads or long reads, generates MAGs and performs +in silico-based analysis (i.e., virulence gene finding). Additionally, AMR gene finding analysis is also included in Centriflaken and performed on MAGs +of interest. The final summary plots and tables can be downloaded from the provided MultiQC HTML report generated as part of the pipeline. +The Centriflaken pipeline was validated with data from our previously published method (Maguire *et al*, 2021. doi: https://doi.org/10.1371/journal.pone.0245172) and was able to replicate the detection +and classification of STECs for each sample. We tested the pipeline with Nanopore data obtained from 21 additional enriched samples from +irrigation water and was able to perform the entire precision metagenomics analysis in less than 5 hours for all of them. All the original testing and validation was +done on the command line on the CFSAN Raven2 HPC Cluster. + + +---- + +.. class:: infomark + +**Outputs** + +The main output files are: + + :: + + - MultiQC Report: Contains a brief summary report including any serotyping and AMR result tables. + Please note that due to MultiQC customizations, the preview (eye icon) will not + work within Galaxy for the MultiQC report. Please download the file by clicking + on the floppy icon and view it in your browser on your local desktop/workstation. + - Final assembly: contains contigs and possibly scaffolds. + + ]]></help> + <citations> + <citation type="bibtex"> + @misc{gitlabCPIPES, + author = {Konganti, Kranti}, + year = {2022}, + title = {CPIPES - Centriflaken}, + publisher = {GitLab}, + journal = {GitLab repository}, + url = {https://cfsan-git.fda.gov/Kranti.Konganti/cpipes}} + </citation> + </citations> +</tool> |