From 8e2a655343c7d9612d3dcb2b7e31197a25340de9 Mon Sep 17 00:00:00 2001 From: Mark McLoughlin Date: Sun, 4 Nov 2012 21:32:48 +0000 Subject: Switch from FLAGS to CONF in nova.console Use the global CONF variable instead of FLAGS. This is purely a cleanup since FLAGS is already just another reference to CONF. We leave the nova.flags imports until a later cleanup commit since removing them may cause unpredictable problems due to config options not being registered. Change-Id: I155d363e26260aa402bb918b4d0726502e7e8758 --- nova/console/api.py | 6 +++--- nova/console/manager.py | 11 ++++++----- nova/console/rpcapi.py | 6 +++--- nova/console/vmrc.py | 7 ++++--- nova/console/vmrc_manager.py | 15 ++++++++------- nova/console/xvp.py | 25 +++++++++++++------------ 6 files changed, 37 insertions(+), 33 deletions(-) diff --git a/nova/console/api.py b/nova/console/api.py index 5a9294ce7..5fb506fe0 100644 --- a/nova/console/api.py +++ b/nova/console/api.py @@ -18,14 +18,14 @@ """Handles ConsoleProxy API requests.""" from nova.compute import rpcapi as compute_rpcapi +from nova import config from nova.console import rpcapi as console_rpcapi from nova.db import base from nova import flags from nova.openstack.common import rpc from nova.openstack.common import uuidutils - -FLAGS = flags.FLAGS +CONF = config.CONF class API(base.Base): @@ -42,7 +42,7 @@ class API(base.Base): def delete_console(self, context, instance_uuid, console_uuid): console = self.db.console_get(context, console_uuid, instance_uuid) - topic = rpc.queue_get_for(context, FLAGS.console_topic, + topic = rpc.queue_get_for(context, CONF.console_topic, console['pool']['host']) rpcapi = console_rpcapi.ConsoleAPI(topic=topic) rpcapi.remove_console(context, console['id']) diff --git a/nova/console/manager.py b/nova/console/manager.py index faaf58d0c..a2f48494b 100644 --- a/nova/console/manager.py +++ b/nova/console/manager.py @@ -20,6 +20,7 @@ import socket from nova.compute import rpcapi as compute_rpcapi +from nova import config from nova import exception from nova import flags from nova import manager @@ -41,8 +42,8 @@ console_manager_opts = [ help='Publicly visible name for this console host'), ] -FLAGS = flags.FLAGS -FLAGS.register_opts(console_manager_opts) +CONF = config.CONF +CONF.register_opts(console_manager_opts) LOG = logging.getLogger(__name__) @@ -57,7 +58,7 @@ class ConsoleProxyManager(manager.Manager): def __init__(self, console_driver=None, *args, **kwargs): if not console_driver: - console_driver = FLAGS.console_driver + console_driver = CONF.console_driver self.driver = importutils.import_object(console_driver) super(ConsoleProxyManager, self).__init__(*args, **kwargs) self.driver.host = self.host @@ -118,7 +119,7 @@ class ConsoleProxyManager(manager.Manager): #NOTE(mdragon): Right now, the only place this info exists is the # compute worker's flagfile, at least for # xenserver. Thus we ned to ask. - if FLAGS.stub_compute: + if CONF.stub_compute: pool_info = {'address': '127.0.0.1', 'username': 'test', 'password': '1234pass'} @@ -128,7 +129,7 @@ class ConsoleProxyManager(manager.Manager): pool_info['password'] = self.driver.fix_pool_password( pool_info['password']) pool_info['host'] = self.host - pool_info['public_hostname'] = FLAGS.console_public_hostname + pool_info['public_hostname'] = CONF.console_public_hostname pool_info['console_type'] = self.driver.console_type pool_info['compute_host'] = instance_host pool = self.db.console_pool_create(context, pool_info) diff --git a/nova/console/rpcapi.py b/nova/console/rpcapi.py index a1f289bb0..06e282dce 100644 --- a/nova/console/rpcapi.py +++ b/nova/console/rpcapi.py @@ -18,11 +18,11 @@ Client side of the console RPC API. """ +from nova import config from nova import flags import nova.openstack.common.rpc.proxy - -FLAGS = flags.FLAGS +CONF = config.CONF class ConsoleAPI(nova.openstack.common.rpc.proxy.RpcProxy): @@ -44,7 +44,7 @@ class ConsoleAPI(nova.openstack.common.rpc.proxy.RpcProxy): BASE_RPC_API_VERSION = '1.0' def __init__(self, topic=None): - topic = topic if topic else FLAGS.console_topic + topic = topic if topic else CONF.console_topic super(ConsoleAPI, self).__init__( topic=topic, default_version=self.BASE_RPC_API_VERSION) diff --git a/nova/console/vmrc.py b/nova/console/vmrc.py index a8b934677..ae66d5f05 100644 --- a/nova/console/vmrc.py +++ b/nova/console/vmrc.py @@ -19,6 +19,7 @@ import base64 +from nova import config from nova import exception from nova import flags from nova.openstack.common import cfg @@ -35,8 +36,8 @@ vmrc_opts = [ help="number of retries for retrieving VMRC information"), ] -FLAGS = flags.FLAGS -FLAGS.register_opts(vmrc_opts) +CONF = config.CONF +CONF.register_opts(vmrc_opts) class VMRCConsole(object): @@ -51,7 +52,7 @@ class VMRCConsole(object): def get_port(self, context): """Get available port for consoles.""" - return FLAGS.console_vmrc_port + return CONF.console_vmrc_port def setup_console(self, context, console): """Sets up console.""" diff --git a/nova/console/vmrc_manager.py b/nova/console/vmrc_manager.py index e654780a3..c40067daa 100644 --- a/nova/console/vmrc_manager.py +++ b/nova/console/vmrc_manager.py @@ -18,6 +18,7 @@ """VMRC Console Manager.""" from nova.compute import rpcapi as compute_rpcapi +from nova import config from nova import exception from nova import flags from nova import manager @@ -29,16 +30,16 @@ from nova.virt.vmwareapi import driver as vmwareapi_conn LOG = logging.getLogger(__name__) -FLAGS = flags.FLAGS -flags.DECLARE('console_driver', 'nova.console.manager') -flags.DECLARE('console_public_hostname', 'nova.console.manager') +CONF = config.CONF +CONF.import_opt('console_driver', 'nova.console.manager') +CONF.import_opt('console_public_hostname', 'nova.console.manager') class ConsoleVMRCManager(manager.Manager): """Manager to handle VMRC connections for accessing instance consoles.""" def __init__(self, console_driver=None, *args, **kwargs): - self.driver = importutils.import_object(FLAGS.console_driver) + self.driver = importutils.import_object(CONF.console_driver) self.compute_rpcapi = compute_rpcapi.ComputeAPI() super(ConsoleVMRCManager, self).__init__(*args, **kwargs) @@ -54,7 +55,7 @@ class ConsoleVMRCManager(manager.Manager): pool['address'], pool['username'], pool['password'], - FLAGS.console_vmrc_error_retries) + CONF.console_vmrc_error_retries) self.sessions[pool['id']] = vim_session return self.sessions[pool['id']] @@ -137,8 +138,8 @@ class ConsoleVMRCManager(manager.Manager): pool_info['host'] = self.host # ESX Address or Proxy Address public_host_name = pool_info['address'] - if FLAGS.console_public_hostname: - public_host_name = FLAGS.console_public_hostname + if CONF.console_public_hostname: + public_host_name = CONF.console_public_hostname pool_info['public_hostname'] = public_host_name pool_info['console_type'] = console_type pool_info['compute_host'] = instance_host diff --git a/nova/console/xvp.py b/nova/console/xvp.py index 60197c766..12a7f3fd3 100644 --- a/nova/console/xvp.py +++ b/nova/console/xvp.py @@ -22,6 +22,7 @@ import signal from Cheetah import Template +from nova import config from nova import context from nova import db from nova import exception @@ -49,8 +50,8 @@ xvp_opts = [ help='port for XVP to multiplex VNC connections on'), ] -FLAGS = flags.FLAGS -FLAGS.register_opts(xvp_opts) +CONF = config.CONF +CONF.register_opts(xvp_opts) LOG = logging.getLogger(__name__) @@ -58,8 +59,8 @@ class XVPConsoleProxy(object): """Sets up XVP config, and manages XVP daemon.""" def __init__(self): - self.xvpconf_template = open(FLAGS.console_xvp_conf_template).read() - self.host = FLAGS.host # default, set by manager. + self.xvpconf_template = open(CONF.console_xvp_conf_template).read() + self.host = CONF.host # default, set by manager. super(XVPConsoleProxy, self).__init__() @property @@ -71,7 +72,7 @@ class XVPConsoleProxy(object): #TODO(mdragon): implement port selection for non multiplex ports, # we are not using that, but someone else may want # it. - return FLAGS.console_xvp_multiplex_port + return CONF.console_xvp_multiplex_port def setup_console(self, context, console): """Sets up actual proxies.""" @@ -104,7 +105,7 @@ class XVPConsoleProxy(object): LOG.debug('No console pools!') self._xvp_stop() return - conf_data = {'multiplex_port': FLAGS.console_xvp_multiplex_port, + conf_data = {'multiplex_port': CONF.console_xvp_multiplex_port, 'pools': pools, 'pass_encode': self.fix_console_password} config = str(Template.Template(self.xvpconf_template, @@ -113,8 +114,8 @@ class XVPConsoleProxy(object): self._xvp_restart() def _write_conf(self, config): - LOG.debug(_('Re-wrote %s') % FLAGS.console_xvp_conf) - with open(FLAGS.console_xvp_conf, 'w') as cfile: + LOG.debug(_('Re-wrote %s') % CONF.console_xvp_conf) + with open(CONF.console_xvp_conf, 'w') as cfile: cfile.write(config) def _xvp_stop(self): @@ -134,9 +135,9 @@ class XVPConsoleProxy(object): LOG.debug(_('Starting xvp')) try: utils.execute('xvp', - '-p', FLAGS.console_xvp_pid, - '-c', FLAGS.console_xvp_conf, - '-l', FLAGS.console_xvp_log) + '-p', CONF.console_xvp_pid, + '-c', CONF.console_xvp_conf, + '-l', CONF.console_xvp_log) except exception.ProcessExecutionError, err: LOG.error(_('Error starting xvp: %s') % err) @@ -151,7 +152,7 @@ class XVPConsoleProxy(object): def _xvp_pid(self): try: - with open(FLAGS.console_xvp_pid, 'r') as pidfile: + with open(CONF.console_xvp_pid, 'r') as pidfile: pid = int(pidfile.read()) except IOError: return None -- cgit