Exemple #1
0
def main():
    """Parse options and call the appropriate class/method."""
    CONF.register_cli_opt(category_opt)
    script_name = sys.argv[0]
    if len(sys.argv) < 2:
        print(
            _("\nOpenStack manila version: %(version)s\n") %
            {'version': version.version_string()})
        print(script_name + " category action [<args>]")
        print(_("Available categories:"))
        for category in CATEGORIES:
            print("\t%s" % category)
        sys.exit(2)

    try:
        log.register_options(CONF)
        CONF(sys.argv[1:], project='manila', version=version.version_string())
        log.setup(CONF, "manila")
    except cfg.ConfigFilesNotFoundError:
        cfgfile = CONF.config_file[-1] if CONF.config_file else None
        if cfgfile and not os.access(cfgfile, os.R_OK):
            st = os.stat(cfgfile)
            print(_("Could not read %s. Re-running with sudo") % cfgfile)
            try:
                os.execvp('sudo', ['sudo', '-u', '#%s' % st.st_uid] + sys.argv)
            except Exception:
                print(_('sudo failed, continuing as if nothing happened'))

        print(_('Please re-run manila-manage as root.'))
        sys.exit(2)

    fn = CONF.category.action_fn

    fn_args = fetch_func_args(fn)
    fn(*fn_args)
Exemple #2
0
def main():
    """Parse options and call the appropriate class/method."""
    CONF.register_cli_opt(category_opt)
    script_name = sys.argv[0]
    if len(sys.argv) < 2:
        print(_("\nOpenStack manila version: %(version)s\n") % {"version": version.version_string()})
        print(script_name + " category action [<args>]")
        print(_("Available categories:"))
        for category in CATEGORIES:
            print("\t%s" % category)
        sys.exit(2)

    try:
        log.register_options(CONF)
        CONF(sys.argv[1:], project="manila", version=version.version_string())
        log.setup(CONF, "manila")
    except cfg.ConfigFilesNotFoundError:
        cfgfile = CONF.config_file[-1] if CONF.config_file else None
        if cfgfile and not os.access(cfgfile, os.R_OK):
            st = os.stat(cfgfile)
            print(_("Could not read %s. Re-running with sudo") % cfgfile)
            try:
                os.execvp("sudo", ["sudo", "-u", "#%s" % st.st_uid] + sys.argv)
            except Exception:
                print(_("sudo failed, continuing as if nothing happened"))

        print(_("Please re-run manila-manage as root."))
        sys.exit(2)

    fn = CONF.category.action_fn

    fn_args = fetch_func_args(fn)
    fn(*fn_args)
Exemple #3
0
def main():
    """Parse options and call the appropriate class/method."""
    CONF.register_cli_opt(category_opt)
    script_name = sys.argv[0]
    if len(sys.argv) < 2:
        print(
            _("\nOpenStack manila version: %(version)s\n") %
            {'version': version.version_string()})
        print(script_name + " category action [<args>]")
        print(_("Available categories:"))
        for category in CATEGORIES:
            print("\t%s" % category)
        sys.exit(2)

    try:
        log.register_options(CONF)
        CONF(sys.argv[1:], project='manila', version=version.version_string())
        log.setup(CONF, "manila")
    except cfg.ConfigFilesNotFoundError as e:
        cfg_files = e.config_files
        print(_("Failed to read configuration file(s): %s") % cfg_files)
        sys.exit(2)

    fn = CONF.category.action_fn

    fn_args = fetch_func_args(fn)
    fn(*fn_args)
Exemple #4
0
def main():
    """Parse options and call the appropriate class/method."""
    CONF.register_cli_opt(category_opt)
    script_name = sys.argv[0]
    if len(sys.argv) < 2:
        print(_("\nOpenStack manila version: %(version)s\n") %
              {'version': version.version_string()})
        print(script_name + " category action [<args>]")
        print(_("Available categories:"))
        for category in CATEGORIES:
            print("\t%s" % category)
        sys.exit(2)

    try:
        log.register_options(CONF)
        CONF(sys.argv[1:], project='manila',
             version=version.version_string())
        log.setup(CONF, "manila")
    except cfg.ConfigFilesNotFoundError as e:
        cfg_files = e.config_files
        print(_("Failed to read configuration file(s): %s") % cfg_files)
        sys.exit(2)

    fn = CONF.category.action_fn

    fn_args = fetch_func_args(fn)
    fn(*fn_args)
Exemple #5
0
def initialize_application():
    log.register_options(CONF)
    CONF(sys.argv[1:], project="manila", version=version.version_string())
    config.verify_share_protocols()
    log.setup(CONF, "manila")
    rpc.init(CONF)
    return wsgi.Loader(CONF).load_app(name='osapi_share')
Exemple #6
0
def main():
    log.register_options(CONF)
    config.set_middleware_defaults()
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    log.setup(CONF, "manila")
    LOG = log.getLogger('manila.all')

    msg = _('manila-all is deprecated in Newton and '
            'will be removed in Ocata.')
    versionutils.report_deprecated_feature(LOG, msg)

    utils.monkey_patch()
    launcher = service.process_launcher()
    # manila-api
    try:
        server = service.WSGIService('osapi_share')
        launcher.launch_service(server, workers=server.workers or 1)
    except (Exception, SystemExit):
        LOG.exception(_LE('Failed to load osapi_share'))

    for binary in [
            'manila-share', 'manila-scheduler', 'manila-api', 'manila-data'
    ]:
        try:
            launcher.launch_service(service.Service.create(binary=binary))
        except (Exception, SystemExit):
            LOG.exception(_LE('Failed to load %s'), binary)
    launcher.wait()
Exemple #7
0
def main():
    log.register_options(CONF)
    config.set_middleware_defaults()
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    log.setup(CONF, "manila")
    LOG = log.getLogger('manila.all')

    msg = _('manila-all is deprecated in Newton and '
            'will be removed in Ocata.')
    versionutils.report_deprecated_feature(LOG, msg)

    utils.monkey_patch()
    launcher = service.process_launcher()
    # manila-api
    try:
        server = service.WSGIService('osapi_share')
        launcher.launch_service(server, workers=server.workers or 1)
    except (Exception, SystemExit):
        LOG.exception(_LE('Failed to load osapi_share'))

    for binary in ['manila-share', 'manila-scheduler', 'manila-api',
                   'manila-data']:
        try:
            launcher.launch_service(service.Service.create(binary=binary))
        except (Exception, SystemExit):
            LOG.exception(_LE('Failed to load %s'), binary)
    launcher.wait()
Exemple #8
0
    def test_main_argv_lt_2(self, register_cli_opt):
        script_name = 'manila-manage'
        sys.argv = [script_name]
        CONF(sys.argv[1:], project='manila', version=version.version_string())
        exit = self.assertRaises(SystemExit, manila_manage.main)

        self.assertTrue(register_cli_opt.called)
        self.assertEqual(2, exit.code)
Exemple #9
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    server = service.Service.create(binary='manila-data')
    service.serve(server)
    service.wait()
Exemple #10
0
    def test_main_argv_lt_2(self, register_cli_opt):
        script_name = 'manila-manage'
        sys.argv = [script_name]
        CONF(sys.argv[1:], project='manila', version=version.version_string())
        exit = self.assertRaises(SystemExit, manila_manage.main)

        self.assertTrue(register_cli_opt.called)
        self.assertEqual(exit.code, 2)
Exemple #11
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    server = service.Service.create(binary='manila-data')
    service.serve(server)
    service.wait()
Exemple #12
0
 def _common_checks(self):
     self.assertEqual(CONF.project, 'manila')
     self.assertEqual(CONF.version, version.version_string())
     log.setup.assert_called_once_with(CONF, "manila")
     log.register_options.assert_called_once_with(CONF)
     log.getLogger.assert_called_once_with('manila.all')
     utils.monkey_patch.assert_called_once_with()
     service.process_launcher.assert_called_once_with()
     service.WSGIService.assert_called_once_with('osapi_share')
Exemple #13
0
 def _common_checks(self):
     self.assertEqual('manila', CONF.project)
     self.assertEqual(version.version_string(), CONF.version)
     log.setup.assert_called_once_with(CONF, "manila")
     log.register_options.assert_called_once_with(CONF)
     log.getLogger.assert_called_once_with('manila.all')
     self.assertEqual(versionutils.report_deprecated_feature.call_count, 1)
     utils.monkey_patch.assert_called_once_with()
     service.process_launcher.assert_called_once_with()
     service.WSGIService.assert_called_once_with('osapi_share')
Exemple #14
0
def main():
    log.register_options(CONF)
    gmr_opts.set_defaults(CONF)
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    gmr.TextGuruMeditation.setup_autorun(version, conf=CONF)
    server = service.Service.create(binary='manila-data')
    service.serve(server)
    service.wait()
Exemple #15
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    config.verify_share_protocols()
    log.setup(CONF, "manila")
    utils.monkey_patch()
    server = service.WSGIService('osapi_share')
    service.serve(server)
    service.wait()
Exemple #16
0
 def _common_checks(self):
     self.assertEqual('manila', CONF.project)
     self.assertEqual(version.version_string(), CONF.version)
     log.setup.assert_called_once_with(CONF, "manila")
     log.register_options.assert_called_once_with(CONF)
     log.getLogger.assert_called_once_with('manila.all')
     self.assertEqual(versionutils.report_deprecated_feature.call_count, 1)
     utils.monkey_patch.assert_called_once_with()
     service.process_launcher.assert_called_once_with()
     service.WSGIService.assert_called_once_with('osapi_share')
Exemple #17
0
 def setUp(self):
     super(ManilaCmdManageTestCase, self).setUp()
     sys.argv = ['manila-share']
     CONF(sys.argv[1:], project='manila', version=version.version_string())
     self.shell_commands = manila_manage.ShellCommands()
     self.host_commands = manila_manage.HostCommands()
     self.db_commands = manila_manage.DbCommands()
     self.version_commands = manila_manage.VersionCommands()
     self.config_commands = manila_manage.ConfigCommands()
     self.get_log_cmds = manila_manage.GetLogCommands()
     self.service_cmds = manila_manage.ServiceCommands()
Exemple #18
0
 def setUp(self):
     super(ManilaCmdManageTestCase, self).setUp()
     sys.argv = ['manila-share']
     CONF(sys.argv[1:], project='manila', version=version.version_string())
     self.shell_commands = manila_manage.ShellCommands()
     self.host_commands = manila_manage.HostCommands()
     self.db_commands = manila_manage.DbCommands()
     self.version_commands = manila_manage.VersionCommands()
     self.config_commands = manila_manage.ConfigCommands()
     self.get_log_cmds = manila_manage.GetLogCommands()
     self.service_cmds = manila_manage.ServiceCommands()
Exemple #19
0
def main():
    log.register_options(CONF)
    gmr_opts.set_defaults(CONF)
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    gmr.TextGuruMeditation.setup_autorun(version, conf=CONF)
    server = service.Service.create(binary='manila-data')
    service.serve(server)
    service.wait()
Exemple #20
0
def main():
    log.register_options(CONF)
    gmr_opts.set_defaults(CONF)
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    config.verify_share_protocols()
    log.setup(CONF, "manila")
    utils.monkey_patch()

    gmr.TextGuruMeditation.setup_autorun(version, conf=CONF)
    launcher = service.process_launcher()
    server = service.WSGIService('osapi_share')
    launcher.launch_service(server, workers=server.workers or 1)
    launcher.wait()
Exemple #21
0
    def test_main(self, register_log_opts, register_cli_opt, config_opts_call):
        script_name = 'manila-manage'
        sys.argv = [script_name, 'config', 'list']
        action_fn = mock.MagicMock()
        CONF.category = mock.MagicMock(action_fn=action_fn)

        manila_manage.main()

        self.assertTrue(register_cli_opt.called)
        register_log_opts.assert_called_once_with(CONF)
        config_opts_call.assert_called_once_with(
            sys.argv[1:], project='manila', version=version.version_string())
        self.assertTrue(action_fn.called)
Exemple #22
0
    def test_main(self, register_log_opts, register_cli_opt, config_opts_call):
        script_name = 'manila-manage'
        sys.argv = [script_name, 'config', 'list']
        action_fn = mock.MagicMock()
        CONF.category = mock.MagicMock(action_fn=action_fn)

        manila_manage.main()

        self.assertTrue(register_cli_opt.called)
        register_log_opts.assert_called_once_with(CONF)
        config_opts_call.assert_called_once_with(
            sys.argv[1:], project='manila', version=version.version_string())
        self.assertTrue(action_fn.called)
Exemple #23
0
def main():
    log.register_options(CONF)
    gmr_opts.set_defaults(CONF)
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    config.verify_share_protocols()
    log.setup(CONF, "manila")
    utils.monkey_patch()

    gmr.TextGuruMeditation.setup_autorun(version, conf=CONF)
    launcher = service.process_launcher()
    server = service.WSGIService('osapi_share')
    launcher.launch_service(server, workers=server.workers or 1)
    launcher.wait()
Exemple #24
0
    def test_main_sudo_failed(self, register_cli_opt, log_setup,
                              register_log_opts, config_opts_call):
        script_name = 'manila-manage'
        sys.argv = [script_name, 'fake_category', 'fake_action']
        config_opts_call.side_effect = cfg.ConfigFilesNotFoundError(
            mock.sentinel._namespace)

        exit = self.assertRaises(SystemExit, manila_manage.main)

        self.assertTrue(register_cli_opt.called)
        register_log_opts.assert_called_once_with(CONF)
        config_opts_call.assert_called_once_with(
            sys.argv[1:], project='manila', version=version.version_string())
        self.assertFalse(log_setup.called)
        self.assertEqual(exit.code, 2)
Exemple #25
0
    def start(self):
        version_string = version.version_string()
        LOG.audit(_('Starting %(topic)s node (version %(version_string)s)'),
                  {'topic': self.topic, 'version_string': version_string})
        self.manager.init_host()
        self.model_disconnected = False
        ctxt = context.get_admin_context()
        try:
            service_ref = db.service_get_by_args(ctxt,
                                                 self.host,
                                                 self.binary)
            self.service_id = service_ref['id']
        except exception.NotFound:
            self._create_service_ref(ctxt)

        self.conn = rpc.create_connection(new=True)
        LOG.debug(_("Creating Consumer connection for Service %s") %
                  self.topic)

        rpc_dispatcher = self.manager.create_rpc_dispatcher()

        # Share this same connection for these Consumers
        self.conn.create_consumer(self.topic, rpc_dispatcher, fanout=False)

        node_topic = '%s.%s' % (self.topic, self.host)
        self.conn.create_consumer(node_topic, rpc_dispatcher, fanout=False)

        self.conn.create_consumer(self.topic, rpc_dispatcher, fanout=True)

        # Consume from all consumers in a thread
        self.conn.consume_in_thread()

        if self.report_interval:
            pulse = utils.LoopingCall(self.report_state)
            pulse.start(interval=self.report_interval,
                        initial_delay=self.report_interval)
            self.timers.append(pulse)

        if self.periodic_interval:
            if self.periodic_fuzzy_delay:
                initial_delay = random.randint(0, self.periodic_fuzzy_delay)
            else:
                initial_delay = None

            periodic = utils.LoopingCall(self.periodic_tasks)
            periodic.start(interval=self.periodic_interval,
                           initial_delay=initial_delay)
            self.timers.append(periodic)
Exemple #26
0
    def test_main_sudo_failed(self, register_cli_opt, log_setup,
                              register_log_opts, config_opts_call):
        script_name = 'manila-manage'
        sys.argv = [script_name, 'fake_category', 'fake_action']
        config_opts_call.side_effect = cfg.ConfigFilesNotFoundError(
            mock.sentinel._namespace)

        exit = self.assertRaises(SystemExit, manila_manage.main)

        self.assertTrue(register_cli_opt.called)
        register_log_opts.assert_called_once_with(CONF)
        config_opts_call.assert_called_once_with(
            sys.argv[1:], project='manila',
            version=version.version_string())
        self.assertFalse(log_setup.called)
        self.assertEqual(exit.code, 2)
Exemple #27
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    launcher = service.ProcessLauncher()
    if CONF.enabled_share_backends:
        for backend in CONF.enabled_share_backends:
            host = "%s@%s" % (CONF.host, backend)
            server = service.Service.create(host=host,
                                            service_name=backend,
                                            binary='manila-share')
            launcher.launch_server(server)
    else:
        server = service.Service.create(binary='manila-share')
        launcher.launch_server(server)
    launcher.wait()
Exemple #28
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    launcher = service.process_launcher()
    if CONF.enabled_share_backends:
        for backend in CONF.enabled_share_backends:
            host = "%s@%s" % (CONF.host, backend)
            server = service.Service.create(host=host,
                                            service_name=backend,
                                            binary='manila-share')
            launcher.launch_service(server)
    else:
        server = service.Service.create(binary='manila-share')
        launcher.launch_service(server)
    launcher.wait()
Exemple #29
0
    def start(self):
        version_string = version.version_string()
        LOG.info('Starting %(topic)s node (version %(version_string)s)', {
            'topic': self.topic,
            'version_string': version_string
        })
        self.model_disconnected = False
        ctxt = context.get_admin_context()

        if self.coordinator:
            coordination.LOCK_COORDINATOR.start()

        try:
            service_ref = db.service_get_by_args(ctxt, self.host, self.binary)
            self.service_id = service_ref['id']
        except exception.NotFound:
            self._create_service_ref(ctxt)

        LOG.debug("Creating RPC server for service %s.", self.topic)

        target = messaging.Target(topic=self.topic, server=self.host)
        endpoints = [self.manager]
        endpoints.extend(self.manager.additional_endpoints)
        self.rpcserver = rpc.get_server(target, endpoints)
        self.rpcserver.start()

        self.manager.init_host()
        if self.report_interval:
            pulse = loopingcall.FixedIntervalLoopingCall(self.report_state)
            pulse.start(interval=self.report_interval,
                        initial_delay=self.report_interval)
            self.timers.append(pulse)

        if self.periodic_interval:
            if self.periodic_fuzzy_delay:
                initial_delay = random.randint(0, self.periodic_fuzzy_delay)
            else:
                initial_delay = None

            periodic = loopingcall.FixedIntervalLoopingCall(
                self.periodic_tasks)
            periodic.start(interval=self.periodic_interval,
                           initial_delay=initial_delay)
            self.timers.append(periodic)
Exemple #30
0
    def start(self):
        version_string = version.version_string()
        LOG.info('Starting %(topic)s node (version %(version_string)s)',
                 {'topic': self.topic, 'version_string': version_string})
        self.model_disconnected = False
        ctxt = context.get_admin_context()

        if self.coordinator:
            coordination.LOCK_COORDINATOR.start()

        try:
            service_ref = db.service_get_by_args(ctxt,
                                                 self.host,
                                                 self.binary)
            self.service_id = service_ref['id']
        except exception.NotFound:
            self._create_service_ref(ctxt)

        LOG.debug("Creating RPC server for service %s.", self.topic)

        target = messaging.Target(topic=self.topic, server=self.host)
        endpoints = [self.manager]
        endpoints.extend(self.manager.additional_endpoints)
        self.rpcserver = rpc.get_server(target, endpoints)
        self.rpcserver.start()

        self.manager.init_host()
        if self.report_interval:
            pulse = loopingcall.FixedIntervalLoopingCall(self.report_state)
            pulse.start(interval=self.report_interval,
                        initial_delay=self.report_interval)
            self.timers.append(pulse)

        if self.periodic_interval:
            if self.periodic_fuzzy_delay:
                initial_delay = random.randint(0, self.periodic_fuzzy_delay)
            else:
                initial_delay = None

            periodic = loopingcall.FixedIntervalLoopingCall(
                self.periodic_tasks)
            periodic.start(interval=self.periodic_interval,
                           initial_delay=initial_delay)
            self.timers.append(periodic)
Exemple #31
0
    def test_main(self):
        self.mock_object(manila_api.log, 'setup')
        self.mock_object(manila_api.log, 'register_options')
        self.mock_object(manila_api.utils, 'monkey_patch')
        self.mock_object(manila_api.service, 'WSGIService')
        self.mock_object(manila_api.service, 'serve')
        self.mock_object(manila_api.service, 'wait')

        manila_api.main()

        self.assertEqual(CONF.project, 'manila')
        self.assertEqual(CONF.version, version.version_string())
        manila_api.log.setup.assert_called_once_with(CONF, "manila")
        manila_api.log.register_options.assert_called_once_with(CONF)
        manila_api.utils.monkey_patch.assert_called_once_with()
        manila_api.service.WSGIService.assert_called_once_with('osapi_share')
        manila_api.service.wait.assert_called_once_with()
        manila_api.service.serve.assert_called_once_with(
            manila_api.service.WSGIService.return_value)
Exemple #32
0
    def test_main(self):
        self.mock_object(manila_api.log, 'setup')
        self.mock_object(manila_api.log, 'register_options')
        self.mock_object(manila_api.utils, 'monkey_patch')
        self.mock_object(manila_api.service, 'process_launcher')
        self.mock_object(manila_api.service, 'WSGIService')

        manila_api.main()

        process_launcher = manila_api.service.process_launcher
        process_launcher.assert_called_once_with()
        self.assertTrue(process_launcher.return_value.launch_service.called)
        self.assertTrue(process_launcher.return_value.wait.called)
        self.assertEqual('manila', CONF.project)
        self.assertEqual(version.version_string(), CONF.version)
        manila_api.log.setup.assert_called_once_with(CONF, "manila")
        manila_api.log.register_options.assert_called_once_with(CONF)
        manila_api.utils.monkey_patch.assert_called_once_with()
        manila_api.service.WSGIService.assert_called_once_with('osapi_share')
Exemple #33
0
def main():
    log.register_options(CONF)
    gmr_opts.set_defaults(CONF)
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    log.setup(CONF, "manila")
    utils.monkey_patch()
    gmr.TextGuruMeditation.setup_autorun(version, conf=CONF)
    launcher = service.process_launcher()
    if CONF.enabled_share_backends:
        for backend in CONF.enabled_share_backends:
            host = "%s@%s" % (CONF.host, backend)
            server = service.Service.create(host=host,
                                            service_name=backend,
                                            binary='manila-share',
                                            coordination=True)
            launcher.launch_service(server)
    else:
        server = service.Service.create(binary='manila-share')
        launcher.launch_service(server)
    launcher.wait()
Exemple #34
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila', version=version.version_string())
    log.setup(CONF, "manila")
    LOG = log.getLogger('manila.all')

    utils.monkey_patch()
    launcher = service.process_launcher()
    # manila-api
    try:
        server = service.WSGIService('osapi_share')
        launcher.launch_service(server, workers=server.workers or 1)
    except (Exception, SystemExit):
        LOG.exception(_LE('Failed to load osapi_share'))

    for binary in ['manila-share', 'manila-scheduler', 'manila-api']:
        try:
            launcher.launch_service(service.Service.create(binary=binary))
        except (Exception, SystemExit):
            LOG.exception(_LE('Failed to load %s'), binary)
    launcher.wait()
Exemple #35
0
    def test_main(self):
        sys.argv = ['manila-scheduler']
        self.mock_object(manila_scheduler.log, 'setup')
        self.mock_object(manila_scheduler.log, 'register_options')
        self.mock_object(manila_scheduler.utils, 'monkey_patch')
        self.mock_object(manila_scheduler.service.Service, 'create')
        self.mock_object(manila_scheduler.service, 'serve')
        self.mock_object(manila_scheduler.service, 'wait')

        manila_scheduler.main()

        self.assertEqual('manila', CONF.project)
        self.assertEqual(version.version_string(), CONF.version)
        manila_scheduler.log.setup.assert_called_once_with(CONF, "manila")
        manila_scheduler.log.register_options.assert_called_once_with(CONF)
        manila_scheduler.utils.monkey_patch.assert_called_once_with()
        manila_scheduler.service.Service.create.assert_called_once_with(
            binary='manila-scheduler', coordination=True)
        manila_scheduler.service.wait.assert_called_once_with()
        manila_scheduler.service.serve.assert_called_once_with(
            manila_scheduler.service.Service.create.return_value)
    def test_main(self):
        sys.argv = ['manila-scheduler']
        self.mock_object(manila_scheduler.log, 'setup')
        self.mock_object(manila_scheduler.log, 'register_options')
        self.mock_object(manila_scheduler.utils, 'monkey_patch')
        self.mock_object(manila_scheduler.service.Service, 'create')
        self.mock_object(manila_scheduler.service, 'serve')
        self.mock_object(manila_scheduler.service, 'wait')

        manila_scheduler.main()

        self.assertEqual('manila', CONF.project)
        self.assertEqual(version.version_string(), CONF.version)
        manila_scheduler.log.setup.assert_called_once_with(CONF, "manila")
        manila_scheduler.log.register_options.assert_called_once_with(CONF)
        manila_scheduler.utils.monkey_patch.assert_called_once_with()
        manila_scheduler.service.Service.create.assert_called_once_with(
            binary='manila-scheduler')
        manila_scheduler.service.wait.assert_called_once_with()
        manila_scheduler.service.serve.assert_called_once_with(
            manila_scheduler.service.Service.create.return_value)
Exemple #37
0
def main():
    log.register_options(CONF)
    CONF(sys.argv[1:], project='manila',
         version=version.version_string())
    log.setup(CONF, "manila")
    LOG = log.getLogger('manila.all')

    utils.monkey_patch()
    servers = []
    # manila-api
    try:
        servers.append(service.WSGIService('osapi_share'))
    except (Exception, SystemExit):
        LOG.exception(_LE('Failed to load osapi_share'))

    for binary in ['manila-share', 'manila-scheduler', 'manila-api']:
        try:
            servers.append(service.Service.create(binary=binary))
        except (Exception, SystemExit):
            LOG.exception(_LE('Failed to load %s'), binary)
    service.serve(*servers)
    service.wait()
Exemple #38
0
 def service_version(self, context):
     return version.version_string()
Exemple #39
0
 def list(self):
     print(version.version_string())
Exemple #40
0
 def list(self):
     print(version.version_string())
Exemple #41
0
 def service_version(self, context):
     return version.version_string()