Mercurial > repos > dfornika > mentalist
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" />