diff --git a/cmd/harbor/root/project/robot/create.go b/cmd/harbor/root/project/robot/create.go index 00ba2369d..1fb0d186b 100644 --- a/cmd/harbor/root/project/robot/create.go +++ b/cmd/harbor/root/project/robot/create.go @@ -202,7 +202,10 @@ 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..59de6442b 100644 --- a/cmd/harbor/root/robot/create.go +++ b/cmd/harbor/root/robot/create.go @@ -331,7 +331,10 @@ 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..9acf07a06 100644 --- a/cmd/harbor/root/robot/update.go +++ b/cmd/harbor/root/robot/update.go @@ -587,7 +587,10 @@ 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) } diff --git a/pkg/views/webhook/create/view.go b/pkg/views/webhook/create/view.go index 0142f47a1..c33a1784d 100644 --- a/pkg/views/webhook/create/view.go +++ b/pkg/views/webhook/create/view.go @@ -83,7 +83,12 @@ func WebhookCreateView(createView *CreateView) error { Title("Endpoint URL"). Value(&createView.EndpointURL). Validate(func(str string) error { - return utils.ValidateURL(str) + formattedUrl := utils.FormatUrl(str) + if err := utils.ValidateURL(formattedUrl); err != nil { + return err + } + createView.EndpointURL = formattedUrl + return nil }), huh.NewInput(). Title("Auth Header"). diff --git a/pkg/views/webhook/edit/view.go b/pkg/views/webhook/edit/view.go index 6c2b5e3d9..31ebeacd8 100644 --- a/pkg/views/webhook/edit/view.go +++ b/pkg/views/webhook/edit/view.go @@ -109,9 +109,11 @@ func WebhookEditView(editView *EditView) { if strings.TrimSpace(str) == "" { return errors.New("endpoint URL cannot be empty") } - if err := utils.ValidateURL(str); err != nil { + formattedUrl := utils.FormatUrl(str) + if err := utils.ValidateURL(formattedUrl); err != nil { return err } + editView.EndpointURL = formattedUrl return nil }),