def parse_args(argv): # The prog='west' override avoids the absolute path of the main.py script # showing up when West is run via the wrapper west_parser = argparse.ArgumentParser( prog='west', description='The Zephyr RTOS meta-tool.', epilog='Run "west <command> -h" for help on each command.') west_parser.add_argument('-z', '--zephyr-base', default=None, help='''Path to the Zephyr base directory. If not given, ZEPHYR_BASE must be defined in the environment, and will be used instead.''') west_parser.add_argument('-v', '--verbose', default=0, action='count', help='''Display verbose output. May be given multiple times to increase verbosity.''') west_parser.add_argument('-V', '--version', action='store_true') subparser_gen = west_parser.add_subparsers(title='commands', dest='command') for command in COMMANDS: parser = command.add_parser(subparser_gen) parser.set_defaults(handler=partial(command_handler, command)) args, unknown = west_parser.parse_known_args(args=argv) if args.version: print_version_info() sys.exit(0) # Set up logging verbosity before doing anything else, so # e.g. verbose messages related to argument handling errors # work properly. log.set_verbosity(args.verbose) try: validate_context(args, unknown) except InvalidWestContext as iwc: log.err(*iwc.args, fatal=True) west_parser.print_usage(file=sys.stderr) sys.exit(1) if 'handler' not in args: log.err('you must specify a command', fatal=True) west_parser.print_usage(file=sys.stderr) sys.exit(1) return args, unknown
import tempfile xlf_cfg = '/etc/opt/ibmcmp/xlf/%s/xlf.cfg' % version new_cfg = tempfile.mktemp() + '_xlf.cfg' log.info('Creating ' + new_cfg) fi = open(xlf_cfg, 'r') fo = open(new_cfg, 'w') crt1_match = re.compile( r'\s*crt\s*[=]\s*(?P<path>.*)/crt1.o').match for line in fi.readlines(): m = crt1_match(line) if m: fo.write('crt = %s/bundle1.o\n' % (m.group('path'))) else: fo.write(line) fi.close() fo.close() opt.append('-F' + new_cfg) return opt def get_flags_opt(self): return ['-O5'] if __name__ == '__main__': from distutils import log log.set_verbosity(2) from fcompiler import new_fcompiler compiler = new_fcompiler(compiler='ibm') compiler.customize() print compiler.get_version()
from google.cloud.storage import Client import log logger = log.getLogger() log.set_verbosity(log.INFO) class RuntimeException(Exception): status_code = 500 def __init__(self, message, image_file="", status_code=None, payload=None): Exception.__init__(self) self.message = message if status_code is not None: self.status_code = status_code self.payload = payload logger.info(message) def to_dict(self): rv = dict(self.payload or ()) rv['message'] = self.message return rv def get_bucket(bucket): client = Client() return client.get_bucket(bucket)