in internal/commands/update.go [57:93]
func updateRelease(ctx *cli.Context, log logrus.FieldLogger, httpClient gitlab.HTTPClient) error {
projectID := ctx.String(flags.ProjectID)
serverURL := ctx.String(flags.ServerURL)
jobToken := ctx.String(flags.JobToken)
privateToken := ctx.String(flags.PrivateToken)
l := log.WithFields(logrus.Fields{
"command": ctx.Command.Name,
flags.ServerURL: serverURL,
flags.ProjectID: projectID,
flags.Name: ctx.String(flags.Name),
flags.TagName: ctx.String(flags.TagName),
})
l.Info("Updating Release...")
gitlabClient, err := gitlab.New(serverURL, jobToken, privateToken, projectID, httpClient, log)
if err != nil {
return fmt.Errorf("create GitLab client: %w", err)
}
crr, err := newUpdateReleaseReq(ctx, log)
if err != nil {
return fmt.Errorf("new UpdateReleaseRequest: %w", err)
}
release, err := gitlabClient.UpdateRelease(ctx.Context, crr)
if err != nil {
return fmt.Errorf("update release: %w", err)
}
printReleaseOutput(ctx.App.Writer, release, log)
l.Info("Release updated successfully!")
return nil
}