Mercurial > repos > galaxyp > morpheus
diff morpheus.xml @ 4:a7c58067f5ee draft
Uploaded
author | galaxyp |
---|---|
date | Thu, 19 Nov 2015 16:13:29 -0500 |
parents | 12c5c3a50d4b |
children | f0202024f80b |
line wrap: on
line diff
--- a/morpheus.xml Thu Nov 19 16:02:50 2015 -0500 +++ b/morpheus.xml Thu Nov 19 16:13:29 2015 -0500 @@ -1,4 +1,4 @@ -<tool id="morpheus" name="Morpheus" version="1.171.2"> +<tool id="morpheus" name="Morpheus" version="1.171.5"> <description>database search algorithm for high-resolution tandem mass spectra</description> <macros> <xml name="modification_options"> @@ -54,17 +54,29 @@ </stdio> <command><![CDATA[ + mkdir output_reports; + cwd=`pwd`; + #import re #set $searchdb_name = $searchdb #if isinstance($searchdb.datatype, $__app__.datatypes_registry.get_datatype_by_extension('uniprotxml').__class__): #set $searchdb_name = 'searchdb.xml' #else #set $searchdb_name = 'searchdb.fasta' #end if - mkdir output_reports; - ln -s $input input.mzml - && ln -s $searchdb $searchdb_name + ln -s $searchdb $searchdb_name + ## Need to link each input to a name in cwd, names must be unique + #set $input_list = [] + #for i,input in enumerate($inputs): + #set $input_name = $re.sub('(?i)([.]?mzML)*$','.mzML',$re.sub('\W','_',$input.name)) + #if $input_name in $input_list: + #set $input_name = str($i) + '_' + $input_name + #end if + #set $input_list = $input_list + [$input_name] + && ln -s $input $input_name + #end for + #set $input_names = ','.join($input_list) && mono \${MORPHEUS_PATH}/morpheus_cl.exe - -d="input.mzml" + -d="$input_names" -db=$searchdb_name #if isinstance($searchdb.datatype, $__app__.datatypes_registry.get_datatype_by_extension('uniprotxml').__class__): #if str( $advanced.adv_options_selector) == "set": @@ -138,13 +150,17 @@ -vm="$vmods" #end if -mt=\${GALAXY_SLOTS:-4} - && ( basepath=`grep 'Input Data File:' input.log.txt | sed 's/Input Data File: \(.*\)input.mzml/\1/'`; - for i in summary.tsv input.log.txt input.PSMs.tsv input.unique_peptides.tsv input.protein_groups.tsv input.pep.xml; - do cat \$i | sed "s#\${basepath}input.mzml#$input.name#" | sed "s#\${basepath}$searchdb_name#$searchdb.name#" > output_reports/\$i; - done ) + #set $out_list = 'summary.tsv PSMs.tsv unique_peptides.tsv protein_groups.tsv log.txt *.pep.xml' + #if len($input_list) > 1: + && ( basepath=`grep 'Proteome Database:' log.txt | sed 's/Proteome Database: \(.*\)${$searchdb_name}/\1/'`; + for i in $out_list; do cat \$i | sed "s#\${basepath}\##" > output_reports/\$i; done ) + #else + && ( basepath=`grep 'Proteome Database:' *.log.txt | head -1 | sed 's/Proteome Database: \(.*\)${$searchdb_name}/\1/'`; + for i in $out_list; do cat *\$i | sed "s#\${basepath}\##" > output_reports/\$i; done ) + #end if ]]></command> <inputs> - <param name="input" type="data" format="mzml" label='Indexed mzML' /> + <param name="inputs" type="data" format="mzml" multiple="true" label='Indexed mzML' /> <param name="searchdb" type="data" format="fasta,uniprotxml" label="MS Protein Search Database: UniProt Xml or Fasta"/> <param name="fm" type="select" multiple="true" optional="true" label="Fixed Modifications"> <expand macro="fixed_modification_options" /> @@ -207,12 +223,14 @@ </conditional> </inputs> <outputs> - <data name="summary" format="txt" label="${input.name.rsplit('.',1)[0]} summary.tsv" from_work_dir="output_reports/summary.tsv" /> - <data name="log" format="txt" label="${input.name.rsplit('.',1)[0]}.log.txt" from_work_dir="output_reports/input.log.txt" /> - <data name="output_psms" format="tabular" label="${input.name.rsplit('.',1)[0]}.PSMs.tsv" from_work_dir="output_reports/input.PSMs.tsv" /> - <data name="output_unique_peptides" format="tabular" label="${input.name.rsplit('.',1)[0]}.unique_peptides.tsv" from_work_dir="output_reports/input.unique_peptides.tsv" /> - <data name="output_protein_groups" format="tabular" label="${input.name.rsplit('.',1)[0]}.protein_groups.tsv" from_work_dir="output_reports/input.protein_groups.tsv" /> - <data name="output_pepxml" format="pepxml" label="${input.name.rsplit('.',1)[0]}.pep.xml" from_work_dir="output_reports/input.pep.xml" /> + <data name="summary" format="txt" label="${tool.name} on ${on_string}: summary.tsv" from_work_dir="output_reports/summary.tsv" /> + <data name="log" format="txt" label="${tool.name} on ${on_string}: log.txt" from_work_dir="output_reports/log.txt" /> + <data name="output_psms" format="tabular" label="${tool.name} on ${on_string}: PSMs.tsv" from_work_dir="output_reports/PSMs.tsv" /> + <data name="output_unique_peptides" format="tabular" label="${tool.name} on ${on_string}: unique_peptides.tsv" from_work_dir="output_reports/unique_peptides.tsv" /> + <data name="output_protein_groups" format="tabular" label="${tool.name} on ${on_string}: protein_groups.tsv" from_work_dir="output_reports/protein_groups.tsv" /> + <collection name="morpheus_pep_xmls" type="list" label="${tool.name} on ${on_string} pep.xml"> + <discover_datasets pattern="(?P<name>.*\.pep.xml)" ext="pepxml" visible="False" directory="output_reports" /> + </collection> </outputs> <tests> <test>