Fix several bugs about Operation Engine service
fix several bugs as follows: 1. Still use the variables defined in scheduled_operation_state.py which is deleted. 2. There is not a method named shoutdown in trigger 3. Miss the serialization object for the rpc client of Operation Engine service 4. Miss the __init__.py in tests/unit/operationengine 5. The config item for executor in setup.cfg is wrong Change-Id: Ie788c558d6517f226a63d2310fb20377c1f37dee Closes-Bug: #1587751
This commit is contained in:
parent
b07a20ac2c
commit
eb37cf16c7
|
@ -49,7 +49,7 @@ smaug.protectables =
|
|||
server = smaug.services.protection.protectable_plugins.server:ServerProtectablePlugin
|
||||
volume = smaug.services.protection.protectable_plugins.volume:VolumeProtectablePlugin
|
||||
smaug.operationengine.engine.executor =
|
||||
executor = smaug.operationengine.engine.executors.thread_pool_executor:ThreadPoolExecutor
|
||||
executor = smaug.services.operationengine.engine.executors.thread_pool_executor:ThreadPoolExecutor
|
||||
|
||||
[build_sphinx]
|
||||
source-dir = doc/source
|
||||
|
|
|
@ -79,7 +79,7 @@ class TriggerManager(object):
|
|||
if trigger.has_operations():
|
||||
raise exception.DeleteTriggerNotAllowed(trigger_id=trigger_id)
|
||||
|
||||
trigger.shoutdown()
|
||||
trigger.shutdown()
|
||||
del self._trigger_obj_map[trigger_id]
|
||||
|
||||
def update_trigger(self, trigger_id, trigger_property):
|
||||
|
|
|
@ -18,12 +18,12 @@ from oslo_config import cfg
|
|||
from oslo_log import log as logging
|
||||
import oslo_messaging as messaging
|
||||
|
||||
from smaug import context
|
||||
from smaug.common import constants
|
||||
from smaug import context as smaug_context
|
||||
from smaug import exception
|
||||
from smaug import manager
|
||||
from smaug import objects
|
||||
from smaug.services.operationengine.engine import trigger_manager
|
||||
from smaug.services.operationengine import scheduled_operation_state
|
||||
|
||||
|
||||
CONF = cfg.CONF
|
||||
|
@ -60,7 +60,7 @@ class OperationEngineManager(manager.Manager):
|
|||
limit = 100
|
||||
marker = None
|
||||
filters = {}
|
||||
ctxt = context.get_admin_context()
|
||||
ctxt = smaug_context.get_admin_context()
|
||||
while True:
|
||||
triggers = objects.TriggerList.get_by_filters(
|
||||
ctxt, filters, limit, marker)
|
||||
|
@ -78,13 +78,13 @@ class OperationEngineManager(manager.Manager):
|
|||
limit = 100
|
||||
marker = None
|
||||
filters = {"service_id": self._service_id,
|
||||
"state": [scheduled_operation_state.REGISTERED,
|
||||
scheduled_operation_state.TRIGGERED,
|
||||
scheduled_operation_state.RUNNING]}
|
||||
"state": [constants.OPERATION_STATE_REGISTERED,
|
||||
constants.OPERATION_STATE_TRIGGERED,
|
||||
constants.OPERATION_STATE_RUNNING]}
|
||||
columns_to_join = ['operation']
|
||||
ctxt = context.get_admin_context()
|
||||
resume_states = [scheduled_operation_state.TRIGGERED,
|
||||
scheduled_operation_state.RUNNING]
|
||||
ctxt = smaug_context.get_admin_context()
|
||||
resume_states = [constants.OPERATION_STATE_TRIGGERED,
|
||||
constants.OPERATION_STATE_RUNNING]
|
||||
while True:
|
||||
states = objects.ScheduledOperationStateList.get_by_filters(
|
||||
ctxt, filters, limit, marker, columns_to_join=columns_to_join)
|
||||
|
@ -114,7 +114,7 @@ class OperationEngineManager(manager.Manager):
|
|||
state_info = {
|
||||
"operation_id": operation_id,
|
||||
"service_id": self._service_id,
|
||||
"state": scheduled_operation_state.REGISTERED
|
||||
"state": constants.OPERATION_STATE_REGISTERED
|
||||
}
|
||||
operation_state = objects.ScheduledOperationState(
|
||||
context, **state_info)
|
||||
|
@ -132,8 +132,8 @@ class OperationEngineManager(manager.Manager):
|
|||
|
||||
operation_state = objects.ScheduledOperationState.\
|
||||
get_by_operation_id(context, operation_id)
|
||||
if scheduled_operation_state.DELETED != operation_state.state:
|
||||
operation_state.state = scheduled_operation_state.DELETED
|
||||
if constants.OPERATION_STATE_DELETED != operation_state.state:
|
||||
operation_state.state = constants.OPERATION_STATE_DELETED
|
||||
operation_state.save()
|
||||
|
||||
self._trigger_manager.unregister_operation(trigger_id, operation_id)
|
||||
|
|
|
@ -17,6 +17,7 @@ Client side of the OperationEngine manager RPC API.
|
|||
from oslo_config import cfg
|
||||
import oslo_messaging as messaging
|
||||
|
||||
from smaug.objects import base as objects_base
|
||||
from smaug import rpc
|
||||
|
||||
|
||||
|
@ -37,7 +38,10 @@ class OperationEngineAPI(object):
|
|||
super(OperationEngineAPI, self).__init__()
|
||||
target = messaging.Target(topic=CONF.operationengine_topic,
|
||||
version=self.RPC_API_VERSION)
|
||||
self.client = rpc.get_client(target, version_cap=None)
|
||||
serializer = objects_base.SmaugObjectSerializer()
|
||||
|
||||
self.client = rpc.get_client(target, version_cap=None,
|
||||
serializer=serializer)
|
||||
|
||||
def create_scheduled_operation(self, ctxt, operation_id, trigger_id):
|
||||
cctxt = self.client.prepare(version='1.0')
|
||||
|
|
|
@ -12,10 +12,10 @@
|
|||
|
||||
from oslo_messaging.rpc import dispatcher as rpc_dispatcher
|
||||
|
||||
from smaug.common import constants
|
||||
from smaug import context
|
||||
from smaug import objects
|
||||
from smaug.services.operationengine import manager as service_manager
|
||||
from smaug.services.operationengine import scheduled_operation_state
|
||||
from smaug.tests import base
|
||||
|
||||
|
||||
|
@ -83,7 +83,7 @@ class OperationEngineManagerTestCase(base.TestCase):
|
|||
|
||||
state = objects.ScheduledOperationState.get_by_operation_id(
|
||||
self.ctxt, self._operation.id)
|
||||
self.assertEqual(scheduled_operation_state.DELETED, state.state)
|
||||
self.assertEqual(constants.OPERATION_STATE_DELETED, state.state)
|
||||
|
||||
def _create_one_trigger(self):
|
||||
trigger_info = {
|
||||
|
@ -117,7 +117,7 @@ class OperationEngineManagerTestCase(base.TestCase):
|
|||
state_info = {
|
||||
"operation_id": operation_id,
|
||||
"service_id": self.manager._service_id,
|
||||
"state": scheduled_operation_state.REGISTERED
|
||||
"state": constants.OPERATION_STATE_REGISTERED
|
||||
}
|
||||
operation_state = objects.ScheduledOperationState(context,
|
||||
**state_info)
|
||||
|
|
Loading…
Reference in New Issue