From d60b53af5c4ad5229b56807ba17dfb4e6b83af5e Mon Sep 17 00:00:00 2001 From: AdeshDeshmukh Date: Fri, 15 May 2026 09:20:44 +0530 Subject: [PATCH] fix: handle GetRobot error in robot create and update output path to prevent nil panic Signed-off-by: AdeshDeshmukh --- cmd/harbor/root/project/robot/create.go | 6 +++++- cmd/harbor/root/robot/create.go | 6 +++++- cmd/harbor/root/robot/update.go | 6 +++++- 3 files changed, 15 insertions(+), 3 deletions(-) diff --git a/cmd/harbor/root/project/robot/create.go b/cmd/harbor/root/project/robot/create.go index 00ba2369d..a552b8d1e 100644 --- a/cmd/harbor/root/project/robot/create.go +++ b/cmd/harbor/root/project/robot/create.go @@ -202,7 +202,11 @@ Examples: FormatFlag := viper.GetString("output-format") if FormatFlag != "" { name := response.Payload.Name - res, _ := api.GetRobot(response.Payload.ID) + res, err := api.GetRobot(response.Payload.ID) + if err != nil { + return fmt.Errorf("failed to get robot details: %v", + utils.ParseHarborErrorMsg(err)) + } utils.SavePayloadJSON(name, res.Payload) return nil } diff --git a/cmd/harbor/root/robot/create.go b/cmd/harbor/root/robot/create.go index 633d43df1..f02987c41 100644 --- a/cmd/harbor/root/robot/create.go +++ b/cmd/harbor/root/robot/create.go @@ -331,7 +331,11 @@ func createRobotAndHandleResponse(opts *create.CreateView, exportToFile bool) er // Handle output format if formatFlag := viper.GetString("output-format"); formatFlag != "" { - res, _ := api.GetRobot(response.Payload.ID) + res, err := api.GetRobot(response.Payload.ID) + if err != nil { + return fmt.Errorf("failed to get robot details: %v", + utils.ParseHarborErrorMsg(err)) + } utils.SavePayloadJSON(response.Payload.Name, res.Payload) return nil } diff --git a/cmd/harbor/root/robot/update.go b/cmd/harbor/root/robot/update.go index 1d2716118..1ee072c80 100644 --- a/cmd/harbor/root/robot/update.go +++ b/cmd/harbor/root/robot/update.go @@ -587,7 +587,11 @@ func updateRobotAndHandleResponse(opts *update.UpdateView) error { // Handle output format if formatFlag := viper.GetString("output-format"); formatFlag != "" { - res, _ := api.GetRobot(opts.ID) + res, err := api.GetRobot(opts.ID) + if err != nil { + return fmt.Errorf("failed to get robot details: %v", + utils.ParseHarborErrorMsg(err)) + } utils.SavePayloadJSON(opts.Name, res.Payload) }