Example #1
0
def dispatch():
    setup_logging()
    dispatcher = DocoptDispatcher(Base, {
        'options_first': True,
        'version': VERSION
    })

    options, handler, command_options = dispatcher.parse(sys.argv[1:])
    setup_console_handler(console_handler, options.get('--verbose'),
                          options.get('--no-ansi'), options.get("--log-level"))
    setup_parallel_logger(options.get('--no-ansi'))
    if options.get('--no-ansi'):
        command_options['--no-color'] = True
    return functools.partial(perform_command, options, handler,
                             command_options)
Example #2
0
def apiDispatch(args):
    """
    Does the same thing as the dispatch function in compose.cli.main.py but instead
    of using os.argv it uses a the passed args array. Also does not catch any
    exceptions so they can be caught programatically.
    params:
        args: Array of argument strings.
    """
    setup_logging()
    dispatcher = dp.DocoptDispatcher(TopLevelCommand, {
        'options_first': True,
        'version': get_version_info('compose')
    })
    # Don't handle argument exceptions here, let them be caught outside of the apiDispatch.
    options, handler, command_options = dispatcher.parse(args)
    setup_console_handler(console_handler, options.get('--verbose'))
    return functools.partial(perform_command, options, handler,
                             command_options)
Example #3
0
def entry():
    setup_logging()
    try:
        command = UtilsCommands()
        command.sys_dispatch()
    except KeyboardInterrupt:
        log.error("\nAborting.")
        sys.exit(1)
    except (UserError, NoSuchService, ConfigurationError) as e:
        log.error(e.msg)
        sys.exit(1)
    except NoSuchCommand as e:
        log.error("No such command: %s", e.command)
        log.error("")
        log.error("\n".join(parse_doc_section("commands:", getdoc(e.supercommand))))
        sys.exit(1)
    except APIError as e:
        log.error(e.explanation)
        sys.exit(1)
    except BuildError as e:
        log.error("Service '%s' failed to build: %s" % (e.service.name, e.reason))
        sys.exit(1)
Example #4
0
def main():
    setup_logging()
    try:
        command = VoodooCommand()
        command.sys_dispatch()
    except KeyboardInterrupt:
        log.error("\nAborting.")
        sys.exit(1)
    except (UserError, NoSuchService, ConfigurationError) as e:
        log.error(e.msg)
        sys.exit(1)
    except NoSuchCommand as e:
        log.error("No such command: %s", e.command)
        log.error("")
        log.error("\n".join(
            parse_doc_section("commands:", getdoc(e.supercommand))))
        sys.exit(1)
    except APIError as e:
        log.error(e.explanation)
        sys.exit(1)
    except BuildError as e:
        log.error("Service '%s' failed to build: %s" %
                  (e.service.name, e.reason))
        sys.exit(1)
Example #5
0
 def test_setup_logging(self):
     main.setup_logging()
     self.assertEqual(logging.getLogger().level, logging.DEBUG)
     self.assertEqual(logging.getLogger('requests').propagate, False)
Example #6
0
 def test_setup_logging(self):
     main.setup_logging()
     self.assertEqual(logging.getLogger().level, logging.DEBUG)
     self.assertEqual(logging.getLogger('requests').propagate, False)
Example #7
0
 def test_setup_logging(self):
     setup_logging()
     self.assertEqual(logging.getLogger().level, logging.DEBUG)
     self.assertEqual(logging.getLogger('requests').level, logging.WARN)