comparison 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
comparison
equal deleted inserted replaced
-1:000000000000 0:715bc9aeef69
1 import argparse
2 import datetime
3 import json
4 import os
5 import shutil
6 import sys
7 import tarfile
8 import urllib.request, urllib.error, urllib.parse
9 import zipfile
10 from import_data import run, _main
11
12 parser = argparse.ArgumentParser(description='Create data manager json.')
13 parser.add_argument('--url', dest='url', action='store', help='Url for CARD data')
14 parser.add_argument('--out', dest='output', action='store', help='JSON filename')
15 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')
16 args = parser.parse_args()
17
18 print('[rgi_database_builder] Importing...')
19
20 _main(args)
21
22 def main(args):
23 print('[rgi_database_builder] Building......')
24
25 data_manager_entry = {}
26 data_manager_entry['value'] = args.name.lower()
27 data_manager_entry['name'] = args.name
28 data_manager_entry['path'] = '.'
29
30 data_manager_json = dict(data_tables = dict(rgi_databases=data_manager_entry))
31
32 params = json.loads(open(args.output,'r').read())
33
34 target_directory = params['output_data'][0]['extra_files_path']
35 os.mkdir(target_directory)
36 output_path = os.path.join(os.getcwd(), 'rgi-database')
37
38 for filename in os.listdir(output_path):
39 print('[rgi_database_builder] move file: {} from {} to {}'.format(filename, output_path, target_directory))
40 shutil.move(os.path.join(output_path, filename), target_directory)
41
42 print(args.output)
43 print('[rgi_database_builder] write file: {}'.format(args.output))
44 open(args.output, 'w').write(json.dumps(data_manager_json))
45
46 if __name__ == '__main__':
47 main(args)