# HG changeset patch # User dfornika # Date 1507676407 14400 # Node ID 7ff3267c1d11edd19d537fc1291373714c829ab3 # Parent 01319da48668ab99e5c725664ada3e86857586df planemo upload for repository https://github.com/WGS-TB/MentaLiST/tree/master/galaxy commit b4e2e1e69829a9aaa33b29834ac2b557ff86cb74 diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_conf.xml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/data_managers/data_manager_conf.xml Tue Oct 10 19:00:07 2017 -0400 @@ -0,0 +1,48 @@ + + + + + + + + + + mentalist_databases/${value} + + ${GALAXY_DATA_MANAGER_DATA_PATH}/mentalist_databases/${value}/${value} + abspath + + + + + + + + + + + + mentalist_databases/${value} + + ${GALAXY_DATA_MANAGER_DATA_PATH}/mentalist_databases/${value}/${value} + abspath + + + + + + + + + + + + mentalist_databases/${value} + + ${GALAXY_DATA_MANAGER_DATA_PATH}/mentalist_databases/${value}/${value} + abspath + + + + + diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_mentalist_build_db/data_manager_conf.xml --- a/data_managers/data_manager_mentalist_build_db/data_manager_conf.xml Tue Oct 10 14:59:34 2017 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,18 +0,0 @@ - - - - - - - - - - mentalist_databases/${value} - - ${GALAXY_DATA_MANAGER_DATA_PATH}/mentalist_databases/${value}/${value} - abspath - - - - - diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_mentalist_download_cgmlst/data_manager/make_json.py --- a/data_managers/data_manager_mentalist_download_cgmlst/data_manager/make_json.py Tue Oct 10 14:59:34 2017 -0400 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,27 +0,0 @@ -import argparse -import json -import os -import shutil - - -def main(args): - data_manager_entry = {} - data_manager_entry['value'] = args.database.lower() - data_manager_entry['name'] = args.database - data_manager_entry['path'] = '.' - data_manager_json = dict(data_tables = dict(mentalist_databases = data_manager_entry)) - params = json.loads(open(args.output).read()) - target_directory = params['output_data'][0]['extra_files_path'] - os.mkdir(target_directory) - output_path = os.path.join(os.getcwd(), 'mentalist-database/cgmlst') - for filename in os.listdir(output_path): - shutil.move(os.path.join(output_path, filename), target_directory) - file(args.output, 'w').write(json.dumps(data_manager_json)) - - -if __name__ == '__main__': - parser = argparse.ArgumentParser(description='Create data manager json.') - parser.add_argument('--db', dest='database', action='store', help='Database name') - parser.add_argument('--out', dest='output', action='store', help='JSON filename') - args = parser.parse_args() - main(args) diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.py --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.py Tue Oct 10 19:00:07 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() diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.xml --- a/data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.xml Tue Oct 10 14:59:34 2017 -0400 +++ b/data_managers/data_manager_mentalist_download_cgmlst/data_manager/mentalist_download_cgmlst.xml Tue Oct 10 19:00:07 2017 -0400 @@ -5,7 +5,7 @@ - - - - - - - - - mentalist_database/${value} - - ${GALAXY_DATA_MANAGER_DATA_PATH}/mentalist_database/${value} - abspath - - - - - diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.py --- a/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.py Tue Oct 10 14:59:34 2017 -0400 +++ b/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.py Tue Oct 10 19:00:07 2017 -0400 @@ -11,7 +11,7 @@ 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 ): +def mentalist_download_pubmlst( 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() @@ -53,7 +53,7 @@ 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 ) + mentalist_download_pubmlst( 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 ) ) diff -r 01319da48668 -r 7ff3267c1d11 data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.xml --- a/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.xml Tue Oct 10 14:59:34 2017 -0400 +++ b/data_managers/data_manager_mentalist_download_pubmlst/data_manager/mentalist_download_pubmlst.xml Tue Oct 10 19:00:07 2017 -0400 @@ -4,14 +4,14 @@ mentalist - + - - - - - - - - - mentalist_database/${value} - - ${GALAXY_DATA_MANAGER_DATA_PATH}/mentalist_database/${value} - abspath - - - - -