From f6be77447c625e16511611b74c77a4cb3baa9ee0 Mon Sep 17 00:00:00 2001 From: Vishvananda Ishaya Date: Thu, 2 Sep 2010 13:42:31 -0700 Subject: inject host into manager --- nova/manager.py | 5 ++++- nova/service.py | 6 ++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/nova/manager.py b/nova/manager.py index 4cc27f05b..e9aa50c56 100644 --- a/nova/manager.py +++ b/nova/manager.py @@ -30,7 +30,10 @@ flags.DEFINE_string('db_driver', 'nova.db.api', class Manager(object): """DB driver is injected in the init method""" - def __init__(self, db_driver=None): + def __init__(self, host=None, db_driver=None): + if not host: + host = FLAGS.host + self.host = host if not db_driver: db_driver = FLAGS.db_driver self.db = utils.import_object(db_driver) # pylint: disable-msg=C0103 diff --git a/nova/service.py b/nova/service.py index e3104fbaa..738816631 100644 --- a/nova/service.py +++ b/nova/service.py @@ -44,11 +44,13 @@ flags.DEFINE_integer('report_interval', 10, class Service(object, service.Service): """Base class for workers that run on hosts.""" - def __init__(self, host, binary, topic, manager, *args, **kwargs): + def __init__(self, host, binary, topic, manager, + db_driver=None, *args, **kwargs): self.host = host self.binary = binary self.topic = topic - self.manager = utils.import_object(manager) + manager_class = utils.import_class(manager) + self.manager = manager_class(host, db_driver) self.model_disconnected = False super(Service, self).__init__(*args, **kwargs) -- cgit