summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--openstack/common/service.py3
-rw-r--r--tests/unit/test_service.py10
2 files changed, 12 insertions, 1 deletions
diff --git a/openstack/common/service.py b/openstack/common/service.py
index 6ebeefd..eb46164 100644
--- a/openstack/common/service.py
+++ b/openstack/common/service.py
@@ -52,7 +52,7 @@ class Launcher(object):
"""
self._services = threadgroup.ThreadGroup()
- eventlet_backdoor.initialize_if_enabled()
+ self.backdoor_port = eventlet_backdoor.initialize_if_enabled()
@staticmethod
def run_service(service):
@@ -72,6 +72,7 @@ class Launcher(object):
:returns: None
"""
+ service.backdoor_port = self.backdoor_port
self._services.add_thread(self.run_service, service)
def stop(self):
diff --git a/tests/unit/test_service.py b/tests/unit/test_service.py
index 77cf7ff..b7ba4f7 100644
--- a/tests/unit/test_service.py
+++ b/tests/unit/test_service.py
@@ -190,3 +190,13 @@ class ServiceLauncherTest(utils.BaseTestCase):
status = self._reap_test()
self.assertTrue(os.WIFEXITED(status))
self.assertEqual(os.WEXITSTATUS(status), 0)
+
+
+class LauncherTest(utils.BaseTestCase):
+ def test_backdoor_port(self):
+ # backdoor port should get passed to the service being launched
+ self.config(backdoor_port=1234)
+ svc = service.Service()
+ launcher = service.launch(svc)
+ self.assertEqual(1234, svc.backdoor_port)
+ launcher.stop()