annotate data_manager/add_table.py @ 9:237607545638 draft default tip

Uploaded
author estrain
date Fri, 05 Jul 2019 10:17:08 -0400
parents 63d5d3560e51
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
1 #!/usr/bin/env python
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
2
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
3 import argparse
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
4 import json
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
5 import os
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
6 import os.path
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
7 import sys
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
8
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
9 def _add_data_table_entry(data_manager_dict, data_table_entry, data_table_name):
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
10 data_manager_dict['data_tables'] = data_manager_dict.get('data_tables', {})
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
11 data_manager_dict['data_tables'][data_table_name] = data_manager_dict['data_tables'].get('ganon_databases', [])
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
12 data_manager_dict['data_tables'][data_table_name].append(data_table_entry)
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
13 return data_manager_dict
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
14
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
15 if __name__ == '__main__':
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
16 parser = argparse.ArgumentParser(description='Download RefSeq rRNA bacterial databases')
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
17 parser.add_argument('--output_directory', default='/tool-data/ganon', help='Directory to write output')
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
18 parser.add_argument('--rrna', help='rRNA sequences to download (5S, 16S, or 23S)')
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
19 args = parser.parse_args()
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
20
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
21 output_directory = args.output_directory
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
22 if not os.path.exists(output_directory):
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
23 os.mkdir(output_directory)
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
24
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
25 data_manager_dict = {}
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
26 _add_data_table_entry(data_manager_dict=data_manager_dict,
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
27 data_table_entry=dict(value="ganon"+args.rrna, dbkey="gannon"+args.rrna, name=args.rrna, path=args.output_directory),
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
28 data_table_name='ganon_databases')
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
29 open("output_file", 'w').write(json.dumps(data_manager_dict, sort_keys=True))
63d5d3560e51 Uploaded
estrain
parents:
diff changeset
30