[FIX] deploy_nodes with no action reports failure

- If all nodes show 'Deployed', mark the task as success

Change-Id: Ib4d5b0d38e660bd13d9fdba28160c92079875a48
This commit is contained in:
Scott Hussey 2018-03-06 15:03:53 -06:00
parent 42aa3c486e
commit f0a7da84b1
1 changed files with 35 additions and 2 deletions

View File

@ -1180,14 +1180,24 @@ class ApplyNodeNetworking(BaseMaasAction):
self.logger.info(msg)
self.task.add_status_msg(
msg=msg, error=True, ctx=n.name, ctx_type='node')
self.task.failure()
self.task.failure(focus=n.name)
elif machine.status_name == 'Deployed':
msg = (
"Located node %s in MaaS, status deployed. Skipping "
"and considering success. Destroy node first if redeploy needed." %
(n.name))
self.logger.info(msg)
self.task.add_status_msg(
msg=msg, error=False, ctx=n.name, ctx_type='node')
self.task.success(focus=n.name)
else:
msg = "Located node %s in MaaS, unknown status %s. Skipping..." % (
n.name, machine.status_name)
self.logger.warning(msg)
self.task.add_status_msg(
msg=msg, error=True, ctx=n.name, ctx_type='node')
self.task.failure()
self.task.failure(focus=n.name)
else:
msg = "Node %s not found in MaaS" % n.name
self.logger.warning(msg)
@ -1270,6 +1280,17 @@ class ApplyNodePlatform(BaseMaasAction):
msg=msg, error=True, ctx=n.name, ctx_type='node')
continue
if machine.status_name == 'Deployed':
msg = (
"Located node %s in MaaS, status deployed. Skipping "
"and considering success. Destroy node first if redeploy needed." %
(n.name))
self.logger.info(msg)
self.task.add_status_msg(
msg=msg, error=False, ctx=n.name, ctx_type='node')
self.task.success(focus=n.name)
continue
try:
# Render the string of all kernel params for the node
kp_string = ""
@ -1429,6 +1450,17 @@ class ApplyNodeStorage(BaseMaasAction):
self.task.failure(focus=n.get_id())
continue
if machine.status_name == 'Deployed':
msg = (
"Located node %s in MaaS, status deployed. Skipping "
"and considering success. Destroy node first if redeploy needed." %
(n.name))
self.logger.info(msg)
self.task.add_status_msg(
msg=msg, error=False, ctx=n.name, ctx_type='node')
self.task.success(focus=n.name)
continue
try:
"""
1. Clear VGs
@ -1746,6 +1778,7 @@ class DeployNode(BaseMaasAction):
self.logger.info(msg)
self.task.add_status_msg(
msg=msg, error=False, ctx=n.name, ctx_type='node')
self.task.success(focus=n.name)
continue
elif machine.status_name == 'Ready':
msg = "Acquiring node %s for deployment" % (n.name)