changeset 4:01319da48668 draft

planemo upload for repository https://github.com/WGS-TB/MentaLiST/tree/master/galaxy commit 6b0c89e9bbaa49824c75326cde4c896b6ac07482-dirty
author dfornika
date Tue, 10 Oct 2017 14:59:34 -0400
parents d23b89e71ee5
children 7ff3267c1d11
files data_managers/data_manager_mentalist_build_db/data_manager/mentalist_build_db.py data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.xml data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.py data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.xml
diffstat 4 files changed, 224 insertions(+), 28 deletions(-) [+]
line wrap: on
line diff
--- a/data_managers/data_manager_mentalist_build_db/data_manager/mentalist_build_db.py	Fri Oct 06 19:05:19 2017 -0400
+++ b/data_managers/data_manager_mentalist_build_db/data_manager/mentalist_build_db.py	Tue Oct 10 14:59:34 2017 -0400
@@ -11,7 +11,7 @@
 DEFAULT_DATA_TABLE_NAMES = ["mentalist_databases"]
 
 
-def build_mentalist_database( data_manager_dict, database_name, kmer_size, profile, fasta_files, params, target_directory, data_table_names=DEFAULT_DATA_TABLE_NAMES ):
+def mentalist_build_db( data_manager_dict, database_name, kmer_size, profile, fasta_files, params, target_directory, data_table_names=DEFAULT_DATA_TABLE_NAMES ):
     args = [ 'mentalist', 'build_db', '--db', database_name, '-k', str(kmer_size)]
     if profile:
         args += ['--profile', profile]
@@ -37,10 +37,10 @@
 def main():
     parser = argparse.ArgumentParser()
     parser.add_argument('params')
-    parser.add_argument( '-d', '--db', dest='database_name', default=None, help='fasta_filenames' )
-    parser.add_argument( '-f', '--fasta_files', dest='fasta_files', nargs='+', default=None, help='fasta_filenames' )
-    parser.add_argument( '-k', '--kmer_size', dest='kmer_size', type=int, default=None, help='kmer_size' )
-    parser.add_argument( '-p', '--profile', dest='profile', type=int, default=None, help='kmer_size' )
+    parser.add_argument( '-d', '--db', dest='database_name', default=None, help='Database Name' )
+    parser.add_argument( '-f', '--fasta_files', dest='fasta_files', nargs='+', default=None, help='FASTA Filenames' )
+    parser.add_argument( '-k', '--kmer_size', dest='kmer_size', type=int, default=None, help='kmer Size' )
+    parser.add_argument( '-p', '--profile', dest='profile', type=int, default=None, help='Profile' )
     args = parser.parse_args()
 
     params = loads( open( args.params ).read() )
@@ -57,7 +57,7 @@
     data_manager_dict = {}
 
     # build the index
-    build_mentalist_database( data_manager_dict, args.database_name, args.kmer_size, args.profile, args.fasta_files, params, target_directory, DEFAULT_DATA_TABLE_NAMES )
+    mentalist_build_db( data_manager_dict, args.database_name, args.kmer_size, args.profile, args.fasta_files, params, target_directory, DEFAULT_DATA_TABLE_NAMES )
 
     # save info to json file
     open( args.params, 'wb' ).write( dumps( data_manager_dict ) )
--- a/data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.xml	Fri Oct 06 19:05:19 2017 -0400
+++ b/data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.xml	Tue Oct 10 14:59:34 2017 -0400
@@ -5,28 +5,28 @@
   </requirements>
   <command detect_errors="exit_code">
     <![CDATA[
-	     mkdir -p mentalist-database/cgmlst && cd mentalist-database/cgmlst &&
-	     mentalist
-	     download_cgmlst
-	     --db '$scheme'
+	     python '$__tool_directory__/mentalist_download_pubmlst.py'
+	     '{$out_file}'
+	     --db '$database_name'
+	     -k '$kmer_size'
 	     --scheme '$scheme'
-	     -k '$kmer_size'
-	     cd .. &&
-	     python '$__tool_directory__/make_json.py' --db '${scheme}' --out '${out_file}'
+	     --output '$output'
     ]]>
   </command>
   <inputs>
     <param name="kmer_size" type="integer"
 	   label="Kmer size" help="Kmer size"
 	   value="31" min="1" max="32" />
+    <param name="output" type="text" label="Output" />
+    <param name="database_name" type="text" label="Database Name" />
     <param name="scheme" type="select" multiple="false" label="Select scheme to download">
-      <option value="">Acinetobacter baumannii</option>
-      <option value="">Clostridioides difficile</option>
-      <option value="">Enterococcus faecium</option>
-      <option value="">Francisella tularensis</option>
-      <option value="">Legionella pneumophila</option>
-      <option value="">Listeria monocytogenes</option>
-      <option value="">Staphylococcus aureus</option>
+      <option value="Acinetobacter baumannii">Acinetobacter baumannii</option>
+      <option value="Clostridioides difficile">Clostridioides difficile</option>
+      <option value="Enterococcus faecium">Enterococcus faecium</option>
+      <option value="Francisella tularensis">Francisella tularensis</option>
+      <option value="Legionella pneumophila">Legionella pneumophila</option>
+      <option value="Listeria monocytogenes">Listeria monocytogenes</option>
+      <option value="Staphylococcus aureus">Staphylococcus aureus</option>
     </param>
   </inputs>
   <outputs>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.py	Tue Oct 10 14:59:34 2017 -0400
@@ -0,0 +1,63 @@
+#!/usr/bin/env python
+from __future__ import print_function
+
+import argparse
+import os
+import subprocess
+import sys
+import errno
+from json import dumps, loads
+
+DEFAULT_DATA_TABLE_NAMES = ["mentalist_databases"]
+
+
+def mentalist_download_cgmlst( data_manager_dict, database_name, kmer_size, scheme, output, params, target_directory, data_table_names=DEFAULT_DATA_TABLE_NAMES ):
+    args = [ 'mentalist', 'download_pubmlst', '--db', database_name, '-k', str(kmer_size), '-s', scheme, '-o' output]
+    proc = subprocess.Popen( args=args, shell=False, cwd=target_directory )
+    return_code = proc.wait()
+    if return_code:
+        print("Error building database.", file=sys.stderr)
+        sys.exit( return_code )
+    data_table_entry = dict( value=database_name, dbkey=database_name, name=database_name, path=(database_name + '/' + database_name) )
+    for data_table_name in data_table_names:
+        _add_data_table_entry( data_manager_dict, data_table_name, data_table_entry )
+
+
+def _add_data_table_entry( data_manager_dict, data_table_name, data_table_entry ):
+    data_manager_dict['data_tables'] = data_manager_dict.get( 'data_tables', {} )
+    data_manager_dict['data_tables'][ data_table_name ] = data_manager_dict['data_tables'].get( data_table_name, [] )
+    data_manager_dict['data_tables'][ data_table_name ].append( data_table_entry )
+    return data_manager_dict
+
+
+def main():
+    parser = argparse.ArgumentParser()
+    parser.add_argument('params')
+    parser.add_argument( '-d', '--db', dest='database_name', default=None, help='Database Name' )
+    parser.add_argument( '-k', '--kmer_size', dest='kmer_size', type=int, default=None, help='kmer Size' )
+    parser.add_argument( '-s', '--scheme', dest='scheme', default=None, help='Scheme' )
+    parser.add_argument( '-o', '--output', dest='output', default=None, help='Output' )
+    args = parser.parse_args()
+
+    params = loads( open( args.params ).read() )
+    target_directory = params[ 'output_data' ][0]['extra_files_path']
+
+    try:
+        os.mkdir( target_directory )
+    except OSError as exc:
+        if exc.errno == errno.EEXIST and os.path.isdir( target_directory ):
+            pass
+        else:
+            raise
+
+    data_manager_dict = {}
+
+    # build the index
+    mentalist_download_cgmlst( data_manager_dict, args.database_name, args.kmer_size, args.scheme, args.output, params, target_directory, DEFAULT_DATA_TABLE_NAMES )
+
+    # save info to json file
+    open( args.params, 'wb' ).write( dumps( data_manager_dict ) )
+
+
+if __name__ == "__main__":
+    main()
--- a/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.xml	Fri Oct 06 19:05:19 2017 -0400
+++ b/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.xml	Tue Oct 10 14:59:34 2017 -0400
@@ -5,21 +5,154 @@
   </requirements>
   <command detect_errors="exit_code">
   <![CDATA[
-	   mkdir mentalist-database && cd mentalist-database &&
-	   MentaLiST.jl
-	   download_pubmlst
-	   --db '$kmer_database'
+	   python '$__tool_directory__/mentalist_download_pubmlst.py'
+	   '{$out_file}'
+	   --db '$database_name'
+	   -k '$kmer_size'
 	   --scheme '$scheme'
-	   -k '$kmer_size'
-	   cd .. &&
-	   python '$__tool_directory__/make_json.py' --db '${database_name}' --out '${out_file}'
+	   --output '$output'
   ]]>
   </command>
   <inputs>
     <param name="kmer_size" type="integer"
 	   label="Kmer size" help="Kmer size"
 	   value="31" min="1" max="32" />
-    <param name="scheme" type="text" label="Species name or ID of scheme" />
+    <param name="output" type="text" label="Output" />
+    <param name="database_name" type="text" label="Database Name" />
+    <param name="scheme" type="select" multiple="false" label="Select scheme to download">
+      <option value="Achromobacter spp.">Achromobacter spp.</option>
+      <option value="Acinetobacter baumannii#1">Acinetobacter baumannii#1</option>
+      <option value="Acinetobacter baumannii#2">Acinetobacter baumannii#2</option>
+      <option value="Aeromonas spp.">Aeromonas spp.</option>
+      <option value="Anaplasma phagocytophilum">Anaplasma phagocytophilum</option>
+      <option value="Arcobacter spp.">Arcobacter spp.</option>
+      <option value="Aspergillus fumigatus">Aspergillus fumigatus</option>
+      <option value="Bacillus cereus">Bacillus cereus</option>
+      <option value="Bacillus licheniformis">Bacillus licheniformis</option>
+      <option value="Bacillus subtilis">Bacillus subtilis</option>
+      <option value="Bartonella bacilliformis">Bartonella bacilliformis</option>
+      <option value="Bartonella henselae">Bartonella henselae</option>
+      <option value="Bordetella spp.">Bordetella spp.</option>
+      <option value="Borrelia spp.">Borrelia spp.</option>
+      <option value="Brachyspira hampsonii">Brachyspira hampsonii</option>
+      <option value="Brachyspira hyodysenteriae">Brachyspira hyodysenteriae</option>
+      <option value="Brachyspira intermedia">Brachyspira intermedia</option>
+      <option value="Brachyspira pilosicoli">Brachyspira pilosicoli</option>
+      <option value="Brachyspira spp.">Brachyspira spp.</option>
+      <option value="Brucella spp.">Brucella spp.</option>
+      <option value="Burkholderia cepacia complex">Burkholderia cepacia complex</option>
+      <option value="Burkholderia pseudomallei">Burkholderia pseudomallei</option>
+      <option value="Campylobacter concisus/curvus">Campylobacter concisus/curvus</option>
+      <option value="Campylobacter fetus">Campylobacter fetus</option>
+      <option value="Campylobacter helveticus">Campylobacter helveticus</option>
+      <option value="Campylobacter hyointestinalis">Campylobacter hyointestinalis</option>
+      <option value="Campylobacter insulaenigrae">Campylobacter insulaenigrae</option>
+      <option value="Campylobacter jejuni">Campylobacter jejuni</option>
+      <option value="Campylobacter lanienae">Campylobacter lanienae</option>
+      <option value="Campylobacter lari">Campylobacter lari</option>
+      <option value="Campylobacter sputorum">Campylobacter sputorum</option>
+      <option value="Campylobacter upsaliensis">Campylobacter upsaliensis</option>
+      <option value="Candida albicans">Candida albicans</option>
+      <option value="Candida glabrata">Candida glabrata</option>
+      <option value="Candida krusei">Candida krusei</option>
+      <option value="Candida tropicalis">Candida tropicalis</option>
+      <option value="Carnobacterium maltaromaticum">Carnobacterium maltaromaticum</option>
+      <option value="Chlamydiales spp.">Chlamydiales spp.</option>
+      <option value="Citrobacter freundii">Citrobacter freundii</option>
+      <option value="Clonorchis sinensis">Clonorchis sinensis</option>
+      <option value="Clostridium botulinum">Clostridium botulinum</option>
+      <option value="Clostridium difficile">Clostridium difficile</option>
+      <option value="Clostridium septicum">Clostridium septicum</option>
+      <option value="Corynebacterium diphtheriae">Corynebacterium diphtheriae</option>
+      <option value="Cronobacter spp.">Cronobacter spp.</option>
+      <option value="Dichelobacter nodosus">Dichelobacter nodosus</option>
+      <option value="Edwardsiella spp.">Edwardsiella spp.</option>
+      <option value="Enterobacter cloacae">Enterobacter cloacae</option>
+      <option value="Enterococcus faecalis">Enterococcus faecalis</option>
+      <option value="Enterococcus faecium">Enterococcus faecium</option>
+      <option value="Escherichia coli#1">Escherichia coli#1</option>
+      <option value="Escherichia coli#2">Escherichia coli#2</option>
+      <option value="Flavobacterium psychrophilum">Flavobacterium psychrophilum</option>
+      <option value="Gallibacterium anatis">Gallibacterium anatis</option>
+      <option value="Haemophilus influenzae">Haemophilus influenzae</option>
+      <option value="Haemophilus parasuis">Haemophilus parasuis</option>
+      <option value="Helicobacter cinaedi">Helicobacter cinaedi</option>
+      <option value="Helicobacter pylori">Helicobacter pylori</option>
+      <option value="Helicobacter suis">Helicobacter suis</option>
+      <option value="Kingella kingae">Kingella kingae</option>
+      <option value="Klebsiella oxytoca">Klebsiella oxytoca</option>
+      <option value="Klebsiella pneumoniae">Klebsiella pneumoniae</option>
+      <option value="Kudoa septempunctata">Kudoa septempunctata</option>
+      <option value="Lactobacillus salivarius">Lactobacillus salivarius</option>
+      <option value="Leptospira spp.">Leptospira spp.</option>
+      <option value="Leptospira spp.#2">Leptospira spp.#2</option>
+      <option value="Leptospira spp.#3">Leptospira spp.#3</option>
+      <option value="Listeria monocytogenes">Listeria monocytogenes</option>
+      <option value="Macrococcus canis">Macrococcus canis</option>
+      <option value="Macrococcus caseolyticus">Macrococcus caseolyticus</option>
+      <option value="Mannheimia haemolytica">Mannheimia haemolytica</option>
+      <option value="Melissococcus plutonius">Melissococcus plutonius</option>
+      <option value="Moraxella catarrhalis">Moraxella catarrhalis</option>
+      <option value="Mycobacterium abscessus">Mycobacterium abscessus</option>
+      <option value="Mycobacterium massiliense">Mycobacterium massiliense</option>
+      <option value="Mycoplasma agalactiae">Mycoplasma agalactiae</option>
+      <option value="Mycoplasma bovis">Mycoplasma bovis</option>
+      <option value="Mycoplasma hyopneumoniae">Mycoplasma hyopneumoniae</option>
+      <option value="Mycoplasma hyorhinis">Mycoplasma hyorhinis</option>
+      <option value="Mycoplasma iowae">Mycoplasma iowae</option>
+      <option value="Mycoplasma pneumoniae">Mycoplasma pneumoniae</option>
+      <option value="Mycoplasma synoviae">Mycoplasma synoviae</option>
+      <option value="Neisseria spp.">Neisseria spp.</option>
+      <option value="Orientia tsutsugamushi">Orientia tsutsugamushi</option>
+      <option value="Ornithobacterium rhinotracheale">Ornithobacterium rhinotracheale</option>
+      <option value="Paenibacillus larvae">Paenibacillus larvae</option>
+      <option value="Pasteurella multocida#1">Pasteurella multocida#1</option>
+      <option value="Pasteurella multocida#2">Pasteurella multocida#2</option>
+      <option value="Pediococcus pentosaceus">Pediococcus pentosaceus</option>
+      <option value="Photobacterium damselae">Photobacterium damselae</option>
+      <option value="Porphyromonas gingivalis">Porphyromonas gingivalis</option>
+      <option value="Propionibacterium acnes">Propionibacterium acnes</option>
+      <option value="Pseudomonas aeruginosa">Pseudomonas aeruginosa</option>
+      <option value="Pseudomonas fluorescens">Pseudomonas fluorescens</option>
+      <option value="Rhodococcus spp.">Rhodococcus spp.</option>
+      <option value="Riemerella anatipestifer">Riemerella anatipestifer</option>
+      <option value="Salmonella enterica">Salmonella enterica</option>
+      <option value="Sinorhizobium spp.">Sinorhizobium spp.</option>
+      <option value="Staphylococcus aureus">Staphylococcus aureus</option>
+      <option value="Staphylococcus epidermidis">Staphylococcus epidermidis</option>
+      <option value="Staphylococcus haemolyticus">Staphylococcus haemolyticus</option>
+      <option value="Staphylococcus lugdunensis">Staphylococcus lugdunensis</option>
+      <option value="Staphylococcus pseudintermedius">Staphylococcus pseudintermedius</option>
+      <option value="Stapylococcus hominis">Stapylococcus hominis</option>
+      <option value="Stenotrophomonas maltophilia">Stenotrophomonas maltophilia</option>
+      <option value="Streptococcus agalactiae">Streptococcus agalactiae</option>
+      <option value="Streptococcus bovis/equinus complex (SBSEC)">Streptococcus bovis/equinus complex (SBSEC)</option>
+      <option value="Streptococcus canis">Streptococcus canis</option>
+      <option value="Streptococcus dysgalactiae equisimilis">Streptococcus dysgalactiae equisimilis</option>
+      <option value="Streptococcus gallolyticus">Streptococcus gallolyticus</option>
+      <option value="Streptococcus oralis">Streptococcus oralis</option>
+      <option value="Streptococcus pneumoniae">Streptococcus pneumoniae</option>
+      <option value="Streptococcus pyogenes">Streptococcus pyogenes</option>
+      <option value="Streptococcus suis">Streptococcus suis</option>
+      <option value="Streptococcus thermophilus">Streptococcus thermophilus</option>
+      <option value="Streptococcus thermophilus#2">Streptococcus thermophilus#2</option>
+      <option value="Streptococcus uberis">Streptococcus uberis</option>
+      <option value="Streptococcus zooepidemicus">Streptococcus zooepidemicus</option>
+      <option value="Streptomyces spp">Streptomyces spp</option>
+      <option value="Taylorella spp.">Taylorella spp.</option>
+      <option value="Tenacibaculum spp.">Tenacibaculum spp.</option>
+      <option value="Trichomonas vaginalis">Trichomonas vaginalis</option>
+      <option value="Vibrio cholerae">Vibrio cholerae</option>
+      <option value="Vibrio parahaemolyticus">Vibrio parahaemolyticus</option>
+      <option value="Vibrio spp.">Vibrio spp.</option>
+      <option value="Vibrio tapetis">Vibrio tapetis</option>
+      <option value="Vibrio vulnificus">Vibrio vulnificus</option>
+      <option value="Wolbachia">Wolbachia</option>
+      <option value="Xylella fastidiosa">Xylella fastidiosa</option>
+      <option value="Yersinia pseudotuberculosis">Yersinia pseudotuberculosis</option>
+      <option value="Yersinia ruckeri">Yersinia ruckeri</option>
+      <option value="Yersinia spp.">Yersinia spp.</option>
+    </param>
   </inputs>
   <outputs>
     <data name="out_file" format="data_manager_json" />