Merge "Add alarm for Restore in progress"
This commit is contained in:
commit
c94e6c8e88
@ -15505,6 +15505,26 @@ class ConductorManager(service.PeriodicService):
|
|||||||
else:
|
else:
|
||||||
return constants.RESTORE_PROGRESS_ALREADY_IN_PROGRESS
|
return constants.RESTORE_PROGRESS_ALREADY_IN_PROGRESS
|
||||||
|
|
||||||
|
entity_instance_id = "%s=%s" % (fm_constants.FM_ENTITY_TYPE_HOST,
|
||||||
|
constants.CONTROLLER_HOSTNAME)
|
||||||
|
|
||||||
|
fault = fm_api.Fault(
|
||||||
|
alarm_id=fm_constants.FM_ALARM_ID_RESTORE_IN_PROGRESS,
|
||||||
|
alarm_state=fm_constants.FM_ALARM_STATE_SET,
|
||||||
|
entity_type_id=fm_constants.FM_ENTITY_TYPE_HOST,
|
||||||
|
entity_instance_id=entity_instance_id,
|
||||||
|
severity=fm_constants.FM_ALARM_SEVERITY_MINOR,
|
||||||
|
reason_text=("System Restore in progress."),
|
||||||
|
# operational
|
||||||
|
alarm_type=fm_constants.FM_ALARM_TYPE_7,
|
||||||
|
# congestion
|
||||||
|
probable_cause=fm_constants.ALARM_PROBABLE_CAUSE_8,
|
||||||
|
proposed_repair_action=("Run 'system restore-complete' to complete restore "
|
||||||
|
"if running restore manually."),
|
||||||
|
service_affecting=False)
|
||||||
|
|
||||||
|
self.fm_api.set_fault(fault)
|
||||||
|
|
||||||
# TODO (agrosu): no use case at this point for sending a BACKUP_ACTION_PRE_RESTORE notification.
|
# TODO (agrosu): no use case at this point for sending a BACKUP_ACTION_PRE_RESTORE notification.
|
||||||
return constants.RESTORE_PROGRESS_STARTED
|
return constants.RESTORE_PROGRESS_STARTED
|
||||||
|
|
||||||
@ -15554,6 +15574,11 @@ class ConductorManager(service.PeriodicService):
|
|||||||
self.dbapi.restore_update(restore.uuid,
|
self.dbapi.restore_update(restore.uuid,
|
||||||
values={'state': state})
|
values={'state': state})
|
||||||
|
|
||||||
|
entity_instance_id = "%s=%s" % (fm_constants.FM_ENTITY_TYPE_HOST,
|
||||||
|
constants.CONTROLLER_HOSTNAME)
|
||||||
|
|
||||||
|
self.fm_api.clear_fault(fm_constants.FM_ALARM_ID_RESTORE_IN_PROGRESS, entity_instance_id)
|
||||||
|
|
||||||
LOG.info("Complete the restore procedure.")
|
LOG.info("Complete the restore procedure.")
|
||||||
|
|
||||||
return constants.RESTORE_PROGRESS_COMPLETED
|
return constants.RESTORE_PROGRESS_COMPLETED
|
||||||
|
@ -10,6 +10,7 @@ Tests for the restore logic
|
|||||||
|
|
||||||
from oslo_context import context
|
from oslo_context import context
|
||||||
|
|
||||||
|
from fm_api import fm_api
|
||||||
from sysinv.common import constants
|
from sysinv.common import constants
|
||||||
from sysinv.conductor import manager
|
from sysinv.conductor import manager
|
||||||
from sysinv.db import api as dbapi
|
from sysinv.db import api as dbapi
|
||||||
@ -24,6 +25,7 @@ class RestoreTestCase(base.BaseHostTestCase):
|
|||||||
# Set up objects for testing
|
# Set up objects for testing
|
||||||
self.service = manager.ConductorManager('test-host', 'test-topic')
|
self.service = manager.ConductorManager('test-host', 'test-topic')
|
||||||
self.service.dbapi = dbapi.get_instance()
|
self.service.dbapi = dbapi.get_instance()
|
||||||
|
self.service.fm_api = fm_api.FaultAPIs()
|
||||||
self.context = context.get_admin_context()
|
self.context = context.get_admin_context()
|
||||||
self.valid_restore_states = [
|
self.valid_restore_states = [
|
||||||
constants.RESTORE_PROGRESS_ALREADY_COMPLETED,
|
constants.RESTORE_PROGRESS_ALREADY_COMPLETED,
|
||||||
|
Loading…
Reference in New Issue
Block a user