Mercurial > repos > galaxyp > fragpipe
diff fragpipe.xml @ 0:14785481da2b draft
planemo upload for repository https://github.com/galaxyproteomics/tools-galaxyp/tree/master/tools/fragpipe commit 905cc2be18669cffe9ac6c46fcd08b6857a67f4f
author | galaxyp |
---|---|
date | Wed, 10 Jul 2024 06:15:00 +0000 |
parents | |
children | da9ebef968bd |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/fragpipe.xml Wed Jul 10 06:15:00 2024 +0000 @@ -0,0 +1,276 @@ +<tool id="fragpipe" name="FragPipe - Academic Research and Education User License (Non-Commercial)" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="20.05"> + <description>Data analysis for mass spectrometry-based proteomics</description> + <macros> + <import>macros.xml</import> + </macros> + <expand macro="requirements"/> + + <stdio> + <!-- The error code from individual tools run by FragPipe is not always propogated to the FragPipe process exit code --> + <regex match="exit code: [^0]" + source="stdout" + level="fatal" + description="A FragPipe pipeline process returned non-zero exit code."/> + </stdio> + + <version_command>fragpipe --help | grep 'FragPipe v'</version_command> + + <!-- + FragPipe wrapper command: + - Links input files + - Modifies database path in workflow file + - Runs Philosopher to add decoys and contaminants + - Runs FragPipe, passing paths to MSFragger, Philosopher, Python, and IonQuant + --> + <command detect_errors="exit_code"><![CDATA[ + ## Create symlink for workflow output + ln -s $workflow_configfile fp.workflow; + + ## The user may opt to only output the workflow to review the parameters. If they haven't selected this option, we prepare and run FragPipe. + #if not $workflow_only + @PREPARE_ENVIRONMENT@ + @PREPARE_INPUTS@ + @PREPARE_DATABASE@ + + ## Run FragPipe + '$__tool_directory__/fragpipe' + --msfragger_key f28c4be2-759b0a11-6c1ea652-1240565a + --ionquant_key 47cb2953-b4bf7726-2c96f5fe-8f1013aa + --headless + --threads \${GALAXY_SLOTS:-8} + --ram \$[ \${GALAXY_MEMORY_MB:-8192} / 1024 ] + --workflow fp.workflow --manifest fp.manifest + --workdir outputs + --config-msfragger \${env_location}/share/msfragger-*/MSFragger-*/MSFragger-*.jar + --config-philosopher \$(which philosopher) + --config-python \$(which python) + --config-ionquant \${env_location}/share/ionquant-*/IonQuant.jar && + + @PREPARE_OUTPUTS@ + #end if + ]]></command> + + <!-- Config file is a FragPipe workflow file --> + <configfiles> + <expand macro="workflow_configfile" /> + </configfiles> + + <inputs> + <!-- License agreements --> + <expand macro="license_agreements"/> + + <!-- Input scan samples --> + <expand macro="samples"/> + + <!-- Searched database --> + <expand macro="fragger_database"/> + + <!-- Workflow input, if the user chooses to re-use existing FragPipe workflow. --> + <expand macro="workflow"/> + + <!-- Only generate a workflow, don't run FragPipe --> + <param name="workflow_only" type="boolean" truevalue="yes" falsevalue="no" checked="false" label="Only generate the workflow output"/> + + <param name="output_options" label="Additional outputs" type="select" multiple="true" display="checkboxes" optional="true"> + <option value="workflow">FragPipe Workflow</option> + <option value="log">FragPipe Log</option> + <option value="combined_outputs">FragPipe Combined Outputs</option> + <option value="concatenated_outputs">TSV Outputs Concatenated</option> + </param> + </inputs> + + <outputs> + <!-- Workflow file used by FragPipe --> + <data name="output_workflow" format="txt" label="${tool.name} on ${on_string}: workflow" from_work_dir="fp.workflow"> + <filter>workflow_only or (output_options and 'workflow' in output_options)</filter> + </data> + <!-- FragPipe log --> + <data name="log" format="txt" label="${tool.name} on ${on_string}: log.txt" from_work_dir="outputs/log_*.txt"> + <filter>not workflow_only and output_options and 'log' in output_options</filter> + </data> + + <!-- Collection outputs comprised of separate results for different experiments --> + <collection name="output_psm" type="list" label="${tool.name} - ${on_string}: psm.tsv" > + <filter>not workflow_only</filter> + <discover_datasets pattern="(?P<designation>.+\.psm.tsv)" ext="tabular" directory="outputs"/> + </collection> + <collection name="output_ion" type="list" label="${tool.name} - ${on_string}: ion.tsv" > + <filter>not workflow_only</filter> + <discover_datasets pattern="(?P<designation>.+\.ion.tsv)" ext="tabular" directory="outputs"/> + </collection> + <collection name="output_peptide" type="list" label="${tool.name} - ${on_string}: peptide.tsv" > + <filter>not workflow_only</filter> + <discover_datasets pattern="(?P<designation>.+\.peptide.tsv)" ext="tabular" directory="outputs"/> + </collection> + <collection name="output_protein" type="list" label="${tool.name} - ${on_string}: protein.tsv" > + <filter>not workflow_only</filter> + <discover_datasets pattern="(?P<designation>.+\.protein.tsv)" ext="tabular" directory="outputs"/> + </collection> + + <!-- Combined results from all experimental groups --> + <collection name="combined_outputs" type="list" label="${tool.name} - ${on_string}: Combined Outputs" > + <filter>not workflow_only and output_options and 'combined_outputs' in output_options</filter> + <discover_datasets pattern="__designation__" ext="tabular" directory="outputs/combined_outputs"/> + </collection> + + <!-- Galaxy-wrapper concatenated results --> + <data name="concat_psm_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated psm.tsv" from_work_dir="outputs/concat_psm.tsv"> + <filter>not workflow_only and 'concatenated_outputs' in output_options</filter> + </data> + <data name="concat_ion_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated ion.tsv" from_work_dir="outputs/concat_ion.tsv"> + <filter>not workflow_only and 'concatenated_outputs' in output_options</filter> + </data> + <data name="concat_peptide_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated peptide.tsv" from_work_dir="outputs/concat_peptide.tsv"> + <filter>not workflow_only and 'concatenated_outputs' in output_options</filter> + </data> + <data name="concat_protein_tsv" format="tabular" label="${tool.name} on ${on_string}: Concatenated protein.tsv" from_work_dir="outputs/concat_protein.tsv"> + <filter>not workflow_only and 'concatenated_outputs' in output_options</filter> + </data> + + <!-- PTM-Shepherd Results --> + <data name="global_profile_tsv" format="tabular" label="${tool.name} on ${on_string}: global.profile.tsv" from_work_dir="outputs/global.profile.tsv"> + <filter>(not workflow_only) and ('Open' in wf['workflow_name'])</filter> + </data> + <data name="global_summary_tsv" format="tabular" label="${tool.name} on ${on_string}: global.modsummary.tsv" from_work_dir="outputs/global.modsummary.tsv"> + <filter>(not workflow_only) and ('Open' in wf['workflow_name'])</filter> + </data> + <data name="global_diagmine_tsv" format="tabular" label="${tool.name} on ${on_string}: global.diagmine.tsv" from_work_dir="outputs/global.diagmine.tsv"> + <filter>(not workflow_only) and ('Open' in wf['workflow_name'])</filter> + </data> + + <!-- + TMT/iTRAW Results + Only produced by TMT, TRAQ, and SLC workflows + --> + <collection name="tmt_results" type="list" label="${tool.name} - ${on_string}: TMT Results" > + <discover_datasets pattern="__designation__" ext="tabular" directory="outputs/tmt-report"/> + <filter>(not workflow_only) and ('TMT' in wf['workflow_name'])</filter> + </collection> + </outputs> + + <tests> + <test expect_num_outputs="11"> + <param name="inputs" value="default/test1.mzML,default/test2.mzML" ftype="mzml"/> + <param name="database_name" value="default/test.fasta" ftype="fasta"/> + <param name="manifest" value="default/test.manifest" ftype="tabular"/> + <param name="workflow_name" value="Default"/> + <param name="output_options" value="workflow,log,combined_outputs,concatenated_outputs"/> + <param name="license_agreements" value="true"/> + <output name="concat_psm_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Spectrum	Spectrum File	Peptide	Modified Peptide	Extended Peptide	Prev AA	Next AA	Peptide Length	Charge	Retention	Observed Mass	Calibrated Observed Mass	Observed M/Z	Calibrated Observed M/Z	Calculated Peptide Mass	Calculated M/Z	Delta Mass	Expectation	Hyperscore	Nextscore	PeptideProphet Probability	Number of Enzymatic Termini	Number of Missed Cleavages	Protein Start	Protein End	Intensity	Assigned Modifications	Observed Modifications	Purity	Is Unique	Protein	Protein ID	Entry Name	Gene	Protein Description	Mapped Genes	Mapped Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="concat_ion_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Peptide Sequence	Modified Sequence	Prev AA	Next AA	Peptide Length	Protein Start	Protein End	M/Z	Charge	Observed Mass	Probability	Expectation	Spectral Count	Intensity	Assigned Modifications	Observed Modifications	Protein	Protein ID	Entry Name	Gene	Protein Description	Mapped Genes	Mapped Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="concat_peptide_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Peptide	Prev AA	Next AA	Peptide Length	Protein Start	Protein End	Charges	Probability	Spectral Count	Intensity	Assigned Modifications	Observed Modifications	Protein	Protein ID	Entry Name	Gene	Protein Description	Mapped Genes	Mapped Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="concat_protein_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Protein	Protein ID	Entry Name	Gene	Length	Organism	Protein Description	Protein Existence	Coverage	Protein Probability	Top Peptide Probability	Total Peptides	Unique Peptides	Razor Peptides	Total Spectral Count	Unique Spectral Count	Razor Spectral Count	Total Intensity	Unique Intensity	Razor Intensity	Razor Assigned Modifications	Razor Observed Modifications	Indistinguishable Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="output_workflow" ftype="txt" file="default/outputs/workflow.txt" compare="contains"> + <assert_contents> + <has_text text="crystalc.run-crystalc=false"/> + </assert_contents> + </output> + <output name="log" ftype="txt"> + <assert_contents> + <has_text text="FragPipe version 20.0"/> + </assert_contents> + </output> + <output_collection name="combined_outputs" type="list"> + <element name="combined_protein.tsv" ftype="tabular"> + <assert_contents> + <has_text text="Protein	Protein ID	Entry Name	Gene	Protein Length	Organism	Protein Existence	Description	Protein Probability	Top Peptide Probability	Combined Total Peptides	Combined Spectral Count	Combined Unique Spectral Count	Combined Total Spectral Count	sample1 Spectral Count	sample2 Spectral Count	sample1 Intensity	sample2 Intensity	Indistinguishable Proteins"/> + </assert_contents> + </element> + </output_collection> + </test> + <test expect_num_outputs="11"> + <param name="inputs" value="tmt11/test1.mzML,tmt11/test2.mzML" ftype="mzml"/> + <param name="database_name" value="tmt11/test.fasta" ftype="fasta"/> + <param name="manifest" value="tmt11/test.manifest" ftype="tabular"/> + <param name="annotation" value="tmt11/test.annotation" ftype="tabular"/> + <param name="workflow_name" value="TMT11"/> + <param name="output_options" value="workflow,log,concatenated_outputs"/> + <param name="license_agreements" value="true"/> + <output name="concat_psm_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Spectrum	Spectrum File	Peptide	Modified Peptide	Extended Peptide	Prev AA	Next AA	Peptide Length	Charge	Retention	Observed Mass	Calibrated Observed Mass	Observed M/Z	Calibrated Observed M/Z	Calculated Peptide Mass	Calculated M/Z	Delta Mass	Expectation	Hyperscore	Nextscore	PeptideProphet Probability	Number of Enzymatic Termini	Number of Missed Cleavages	Protein Start	Protein End	Intensity	Assigned Modifications	Observed Modifications	Purity	Is Unique	Protein	Protein ID	Entry Name	Gene	Protein Description	Mapped Genes	Mapped Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="concat_ion_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Peptide Sequence	Modified Sequence	Prev AA	Next AA	Peptide Length	Protein Start	Protein End	M/Z	Charge	Observed Mass	Probability	Expectation	Spectral Count	Intensity	Assigned Modifications	Observed Modifications	Protein	Protein ID	Entry Name	Gene	Protein Description	Mapped Genes	Mapped Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="concat_peptide_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Peptide	Prev AA	Next AA	Peptide Length	Protein Start	Protein End	Charges	Probability	Spectral Count	Intensity	Assigned Modifications	Observed Modifications	Protein	Protein ID	Entry Name	Gene	Protein Description	Mapped Genes	Mapped Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="concat_protein_tsv" ftype="tabular"> + <assert_contents> + <has_text text="Experiment	Protein	Protein ID	Entry Name	Gene	Length	Organism	Protein Description	Protein Existence	Coverage	Protein Probability	Top Peptide Probability	Total Peptides	Unique Peptides	Razor Peptides	Total Spectral Count	Unique Spectral Count	Razor Spectral Count	Total Intensity	Unique Intensity	Razor Intensity	Razor Assigned Modifications	Razor Observed Modifications	Indistinguishable Proteins"/> + <has_text text="sample1"/> + </assert_contents> + </output> + <output name="output_workflow" ftype="txt" file="tmt11/outputs/workflow.txt" compare="contains"> + <assert_contents> + <has_text text="crystalc.run-crystalc=false"/> + </assert_contents> + </output> + <output name="log" ftype="txt"> + <assert_contents> + <has_text text="FragPipe version 20.0"/> + </assert_contents> + </output> + <output_collection name="tmt_results" type="list"> + <element name="abundance_gene_MD.tsv" ftype="tabular"> + <assert_contents> + <has_text text="Index	NumberPSM	ProteinID	MaxPepProb	ReferenceIntensity	sample-01	sample-02	sample-03	sample-04	sample-05	sample-06	sample-07	sample-08	sample-09	sample-10	Bridge"/> + </assert_contents> + </element> + <element name="ratio_gene_MD.tsv" ftype="tabular"> + <assert_contents> + <has_text text="Index	NumberPSM	ProteinID	MaxPepProb	ReferenceIntensity	sample-01	sample-02	sample-03	sample-04	sample-05	sample-06	sample-07	sample-08	sample-09	sample-10	Bridge"/> + </assert_contents> + </element> + </output_collection> + </test> + </tests> + + <help><![CDATA[ +**FragPipe** + +FragPipe_ is a suite of computational tools enabling comprehensive analysis of mass spectrometry-based proteomics data. +FragPipe uses MSFragger_ - an ultrafast proteomic search engine suitable for both conventional and “open” (wide precursor mass tolerance) peptide identification. + +FragPipe_ runs a user selected analysis workflow_ + +**License Agreements** + + @LICENSE_AGREEMENTS@ + +.. _FragPipe: https://fragpipe.nesvilab.org +.. _MSFragger: https://msfragger.nesvilab.org +.. _workflow: https://fragpipe.nesvilab.org/docs/tutorial_fragpipe_workflows.html + + ]]></help> + <expand macro="citations" /> +</tool>