diff --git a/heat/engine/service.py b/heat/engine/service.py index 0101e5e3cf..cffcbeffad 100644 --- a/heat/engine/service.py +++ b/heat/engine/service.py @@ -345,14 +345,13 @@ class EngineService(service.ServiceBase): LOG.debug("Starting listener for engine %s", self.engine_id) self.listener.start() - if cfg.CONF.convergence_engine: - self.worker_service = worker.WorkerService( - host=self.host, - topic=rpc_worker_api.TOPIC, - engine_id=self.engine_id, - thread_group_mgr=self.thread_group_mgr - ) - self.worker_service.start() + self.worker_service = worker.WorkerService( + host=self.host, + topic=rpc_worker_api.TOPIC, + engine_id=self.engine_id, + thread_group_mgr=self.thread_group_mgr + ) + self.worker_service.start() target = messaging.Target( version=self.RPC_API_VERSION, server=self.host, @@ -401,8 +400,7 @@ class EngineService(service.ServiceBase): if self.listener: self.listener.stop() - if cfg.CONF.convergence_engine and self.worker_service: - # Stop the WorkerService + if self.worker_service: self.worker_service.stop() # Wait for all active threads to be finished @@ -1373,7 +1371,7 @@ class EngineService(service.ServiceBase): stack = parser.Stack.load(cnxt, stack=st) self.resource_enforcer.enforce_stack(stack, is_registered_policy=True) - if stack.convergence and cfg.CONF.convergence_engine: + if stack.convergence: stack.thread_group_mgr = self.thread_group_mgr template = templatem.Template.create_empty_template( from_template=stack.t) diff --git a/heat/tests/engine/service/test_service_engine.py b/heat/tests/engine/service/test_service_engine.py index a66e8e0ded..421c2e3598 100644 --- a/heat/tests/engine/service/test_service_engine.py +++ b/heat/tests/engine/service/test_service_engine.py @@ -227,6 +227,8 @@ class ServiceEngineTest(common.HeatTestCase): return_value=mock.Mock()) @mock.patch('heat.engine.service.EngineListener', return_value=mock.Mock()) + @mock.patch('heat.engine.worker.WorkerService', + return_value=mock.Mock()) @mock.patch('oslo_service.threadgroup.ThreadGroup', return_value=mock.Mock()) @mock.patch.object(service.EngineService, '_configure_db_conn_pool_size') @@ -234,16 +236,17 @@ class ServiceEngineTest(common.HeatTestCase): self, configure_db_conn_pool_size, thread_group_class, + worker_service_class, engine_listener_class, thread_group_manager_class, sample_uuid_method, rpc_client_class, target_class, rpc_server_method): - cfg.CONF.set_default('convergence_engine', False) + cfg.CONF.set_override('convergence_engine', False) self._test_engine_service_start( thread_group_class, - None, + worker_service_class, engine_listener_class, thread_group_manager_class, sample_uuid_method, @@ -280,7 +283,7 @@ class ServiceEngineTest(common.HeatTestCase): rpc_client_class, target_class, rpc_server_method): - cfg.CONF.set_default('convergence_engine', True) + cfg.CONF.set_override('convergence_engine', True) self._test_engine_service_start( thread_group_class, worker_service_class,