From e2f9ef33b912fd3e928d7110c744e9a446f6f370 Mon Sep 17 00:00:00 2001 From: mabulgu Date: Mon, 1 Jun 2026 13:58:48 +0300 Subject: [PATCH] Include image URL and checksum in provisioning error message When image provisioning fails, the error message now includes the image URL and checksum to help operators identify which image version failed. Signed-off-by: mabulgu --- pkg/provisioner/ironic/ironic.go | 3 ++- pkg/provisioner/ironic/provision_test.go | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pkg/provisioner/ironic/ironic.go b/pkg/provisioner/ironic/ironic.go index afae65bf4d..b9c7e1b175 100644 --- a/pkg/provisioner/ironic/ironic.go +++ b/pkg/provisioner/ironic/ironic.go @@ -1275,7 +1275,8 @@ func (p *ironicProvisioner) Provision(ctx context.Context, data provisioner.Prov return retryAfterDelay(0) } p.log.Info("found error", "msg", ironicNode.LastError) - return operationFailed("Image provisioning failed: " + ironicNode.LastError) + checksum, _, _ := data.Image.GetChecksum() + return operationFailed(fmt.Sprintf("Image provisioning failed (url: %s, checksum: %s): %s", data.Image.URL, checksum, ironicNode.LastError)) } p.log.Info("recovering from previous failure") if provResult, err = p.setUpForProvisioning(ctx, ironicNode, data); err != nil || provResult.Dirty || provResult.ErrorMessage != "" { diff --git a/pkg/provisioner/ironic/provision_test.go b/pkg/provisioner/ironic/provision_test.go index a2493b6c3b..1cb1e17f34 100644 --- a/pkg/provisioner/ironic/provision_test.go +++ b/pkg/provisioner/ironic/provision_test.go @@ -66,7 +66,7 @@ func TestProvision(t *testing.T) { }), expectedRequestAfter: 0, expectedDirty: false, - expectedErrorMessage: "Image provisioning failed: no work today", + expectedErrorMessage: "Image provisioning failed (url: http://test-image, checksum: abcd): no work today", }, { name: "cleanFail state",