summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJenkins <jenkins@review.openstack.org>2013-03-22 17:08:21 +0000
committerGerrit Code Review <review@openstack.org>2013-03-22 17:08:21 +0000
commita92b7c8f9281cb2dcf8eb6d6a7c466a463719352 (patch)
tree894ccc66d3b6ca537259a0bd080df5313262f341
parent4979817fa159424f5a1fb093bdc261c1882ca877 (diff)
parent9075069098e32b47bd5011e2653a23b61c18d4a3 (diff)
Merge "Initialize compute manager before loading driver."
-rwxr-xr-xnova/compute/manager.py7
1 files changed, 5 insertions, 2 deletions
diff --git a/nova/compute/manager.py b/nova/compute/manager.py
index 604362783..fda7f490a 100755
--- a/nova/compute/manager.py
+++ b/nova/compute/manager.py
@@ -329,7 +329,6 @@ class ComputeManager(manager.SchedulerDependentManager):
def __init__(self, compute_driver=None, *args, **kwargs):
"""Load configuration options and connect to the hypervisor."""
self.virtapi = ComputeVirtAPI(self)
- self.driver = driver.load_compute_driver(self.virtapi, compute_driver)
self.network_api = network.API()
self.volume_api = volume.API()
self._last_host_check = 0
@@ -343,11 +342,15 @@ class ComputeManager(manager.SchedulerDependentManager):
openstack_driver.is_quantum_security_groups())
self.consoleauth_rpcapi = consoleauth.rpcapi.ConsoleAuthAPI()
self.cells_rpcapi = cells_rpcapi.CellsAPI()
+ self._resource_tracker_dict = {}
super(ComputeManager, self).__init__(service_name="compute",
*args, **kwargs)
- self._resource_tracker_dict = {}
+ # NOTE(russellb) Load the driver last. It may call back into the
+ # compute manager via the virtapi, so we want it to be fully
+ # initialized before that happens.
+ self.driver = driver.load_compute_driver(self.virtapi, compute_driver)
def _get_resource_tracker(self, nodename):
rt = self._resource_tracker_dict.get(nodename)