Mercurial > repos > card > rgi
diff data_managers/data_manager_rgi_build_db/data_manager/rgi_database_builder.py @ 0:715bc9aeef69 draft
planemo upload for repository https://github.com/arpcard/rgi commit 7a78289be23c5a14ae39f454610fa8eca3f05188
author | card |
---|---|
date | Wed, 27 Feb 2019 09:08:21 -0500 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/data_managers/data_manager_rgi_build_db/data_manager/rgi_database_builder.py Wed Feb 27 09:08:21 2019 -0500 @@ -0,0 +1,47 @@ +import argparse +import datetime +import json +import os +import shutil +import sys +import tarfile +import urllib.request, urllib.error, urllib.parse +import zipfile +from import_data import run, _main + +parser = argparse.ArgumentParser(description='Create data manager json.') +parser.add_argument('--url', dest='url', action='store', help='Url for CARD data') +parser.add_argument('--out', dest='output', action='store', help='JSON filename') +parser.add_argument('--name', dest='name', action='store', default='CARD_data-' + str(datetime.datetime.now().strftime('%Y-%B-%d-%H:%M:%S')), help='Data table database name') +args = parser.parse_args() + +print('[rgi_database_builder] Importing...') + +_main(args) + +def main(args): + print('[rgi_database_builder] Building......') + + data_manager_entry = {} + data_manager_entry['value'] = args.name.lower() + data_manager_entry['name'] = args.name + data_manager_entry['path'] = '.' + + data_manager_json = dict(data_tables = dict(rgi_databases=data_manager_entry)) + + params = json.loads(open(args.output,'r').read()) + + target_directory = params['output_data'][0]['extra_files_path'] + os.mkdir(target_directory) + output_path = os.path.join(os.getcwd(), 'rgi-database') + + for filename in os.listdir(output_path): + print('[rgi_database_builder] move file: {} from {} to {}'.format(filename, output_path, target_directory)) + shutil.move(os.path.join(output_path, filename), target_directory) + + print(args.output) + print('[rgi_database_builder] write file: {}'.format(args.output)) + open(args.output, 'w').write(json.dumps(data_manager_json)) + +if __name__ == '__main__': + main(args)