Mercurial > repos > dfornika > data_manager_build_mob_suite_database
view data_manager/mob_suite_build_database.py @ 4:737a6e1ac399 draft
planemo upload for repository https://github.com/dfornika/galaxytools/tree/master/data_managers/data_manager_build_mob_suite_database/ commit 3587b1c384fdb0fc947ef8fb558acf2a964bc128-dirty
author | dfornika |
---|---|
date | Fri, 24 May 2019 15:38:52 -0400 |
parents | 63113bf49446 |
children | 341f4beb73cb |
line wrap: on
line source
#!/usr/bin/env python from __future__ import print_function import argparse import datetime import errno import json import os import string import subprocess import sys DATA_TABLE_NAME = "mob_suite_databases" def mob_suite_build_database_mob_init(target_directory, data_table_name=DATA_TABLE_NAME): now = datetime.datetime.utcnow().strftime("%Y-%m-%dT%H%M%SZ") database_value = "_".join([ ]) database_name = " ".join([ ]) database_path = database_value args = [ ] subprocess.check_call(['mob_init'], target_directory) data_table_entry = { "data_tables": { data_table_name: [ { "value": database_value, "name": database_name, "path": database_path, } ] } } return data_table_entry def main(): parser = argparse.ArgumentParser() parser.add_argument('data_manager_json') parser.add_argument( '--threads', dest='threads', default=1, help='threads' ) parser.add_argument( '--mode', dest='mode', default=1, help='database construction mode' ) args = parser.parse_args() data_manager_input = json.loads(open(args.data_manager_json).read()) target_directory = data_manager_input['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_output = {} if str(args.mode) == 'mob_init': data_manager_output = mob_suite_build_database_mob_init( target_directory, ) else: sys.exit("Invalid database construction mode") open(args.data_manager_json, 'wb').write(json.dumps(data_manager_output)) if __name__ == "__main__": main()