#!/usr/bin/env python import sys from htsworkflow.pipelines.retrieve_config import * from htsworkflow.pipelines import retrieve_config from htsworkflow.pipelines.genome_mapper import getAvailableGenomes from htsworkflow.pipelines.genome_mapper import constructMapperDict #Turn on built-in command-line parsing. retrieve_config.DISABLE_CMDLINE = False def main(args=None): #Display help if no args are presented if len(sys.argv) == 1: sys.argv.append('-h') options = getCombinedOptions() msg_list = ['ERROR MESSAGES:'] if options.output_filepath is None: msg_list.append(" Output filepath argument required. -o or --output=") if options.flowcell is None: msg_list.append(" Flow cell argument required. -f or --flowcell=") if options.url is None: msg_list.append(" URL argument required (-u or --url=), or entry\n" \ " in /etc/ga_frontend/ga_frontend.conf or ~/.ga_frontend.conf") if options.genome_dir is None: msg_list.append(" genome_dir argument required (-g or \n" \ " --genome_dir=, or entry in \n" \ " /etc/ga_frontend/ga_frontend.conf or ~/.ga_frontend.conf") if len(msg_list) > 1: print '\n'.join(msg_list) return 1 saveConfigFile(options.flowcell, options.url, options.output_filepath) f = open(options.output_filepath, 'r') data = f.read() f.close() genome_dict = getAvailableGenomes(options.genome_dir) mapper_dict = constructMapperDict(genome_dict) f = open(options.output_filepath, 'w') f.write(data % (mapper_dict)) f.close() return 0 if __name__ == "__main__": sys.exit(main(sys.argv[1:]))