Browse Source

Make deploy step failure logging indicate the error

Deploy step logging would previously only log the step to the API
user, instead of anything the API user could use to try and determine
what is wrong.

Example:
- Trying to power on a machine as part of deploy.deploy()
- Power-on operation fails
- Only the deploy step is listed as the error, and no
  additional information to troubleshoot the issue,
  which forced the operator to go examine logs and
  find the error.

Change-Id: If60b96dcafa446de090df56089760eda3a21109d
(cherry picked from commit 6a1d453ef0)
changes/86/717686/1
Julia Kreger 3 months ago
committed by Dmitry Tantsur
parent
commit
814022b3fc
2 changed files with 10 additions and 1 deletions
  1. +4
    -1
      ironic/conductor/manager.py
  2. +6
    -0
      releasenotes/notes/deploy-step-error-d343e8cb7d1b2305.yaml

+ 4
- 1
ironic/conductor/manager.py View File

@@ -3623,7 +3623,10 @@ def _do_next_deploy_step(task, step_index, conductor_id):
{'node': node.uuid, 'step': node.deploy_step, 'err': e})
utils.deploying_error_handler(
task, log_msg,
_("Failed to deploy: %s") % node.deploy_step)
_("Failed to deploy: Deploy step %(step)s, "
"error: %(err)s.") % {
'step': node.deploy_step,
'err': e})
return
except Exception as e:
log_msg = ('Node %(node)s failed deploy step %(step)s with '


+ 6
- 0
releasenotes/notes/deploy-step-error-d343e8cb7d1b2305.yaml View File

@@ -0,0 +1,6 @@
---
fixes:
- |
Fixes vague node ``last_error`` field reporting upon deploy step
failure by providing the exception error message in addition
to the step that failed.

Loading…
Cancel
Save