From 27e2acf2b1d7e17e930f1171f42fe7d5edcd4cc0 Mon Sep 17 00:00:00 2001 From: Olivier FAURAX Date: Wed, 20 Sep 2023 14:58:09 +0200 Subject: [PATCH] providers/redfish/tasks: returns TaskNotFound on 404 --- providers/redfish/tasks.go | 4 +++- providers/redfish/tasks_test.go | 7 +++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/providers/redfish/tasks.go b/providers/redfish/tasks.go index 49bd1713..95533c8d 100644 --- a/providers/redfish/tasks.go +++ b/providers/redfish/tasks.go @@ -18,7 +18,6 @@ import ( func (c *Conn) activeTask(ctx context.Context) (*gofishrf.Task, error) { resp, err := c.redfishwrapper.Get("/redfish/v1/TaskService/Tasks") if err != nil { - fmt.Println("err1", err) return nil, err } if resp.StatusCode != 200 { @@ -126,6 +125,9 @@ func (c *Conn) GetTask(taskID string) (task *gofishrf.Task, err error) { resp, err := c.redfishwrapper.Get("/redfish/v1/TaskService/Tasks/" + taskID) if err != nil { + if strings.HasPrefix(err.Error(), "404") { + return nil, errors.Wrap(bmclibErrs.ErrTaskNotFound, "task with ID not found: "+taskID) + } return nil, err } if resp.StatusCode != 200 { diff --git a/providers/redfish/tasks_test.go b/providers/redfish/tasks_test.go index 18bf6a8b..795ff670 100644 --- a/providers/redfish/tasks_test.go +++ b/providers/redfish/tasks_test.go @@ -2,7 +2,10 @@ package redfish import ( "context" + "errors" "testing" + + bmclibErrs "github.com/bmc-toolbox/bmclib/v2/errors" ) func Test_activeTask(t *testing.T) { @@ -29,8 +32,8 @@ func Test_GetTask(t *testing.T) { if task != nil { t.Fatal("Task should be nil, but got:", task) } - if err == nil { - t.Fatal("err shouldn't be nil:", err) + if !errors.Is(err, bmclibErrs.ErrTaskNotFound) { + t.Fatal("err should be TaskNotFound:", err) } }