Skip to content

Commit

Permalink
Error messages when reading latest landscaper version fails (#375)
Browse files Browse the repository at this point in the history
  • Loading branch information
robertgraeff authored Feb 20, 2025
1 parent 1796846 commit adb396d
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 4 deletions.
2 changes: 1 addition & 1 deletion cmd/quickstart/install.go
Original file line number Diff line number Diff line change
Expand Up @@ -193,7 +193,7 @@ func (o *installOptions) run(ctx context.Context, log logr.Logger) error {
if version == latestRelease {
version, err = version2.GetRelease()
if err != nil {
return fmt.Errorf("cannot get latest Landscaper release: %w", err)
return err
}
}

Expand Down
11 changes: 8 additions & 3 deletions pkg/version/release.go
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ package version

import (
"encoding/json"
"fmt"
"io"
"net/http"
)
Expand All @@ -13,19 +14,23 @@ type Release struct {
func GetRelease() (string, error) {
resp, err := http.Get("https://api.github.com/repos/gardener/landscaper/releases/latest")
if err != nil {
return "", err
return "", fmt.Errorf("failed to get latest landscaper release info: request failed: %w", err)
}
defer resp.Body.Close()

body, err := io.ReadAll(resp.Body)
if err != nil {
return "", err
return "", fmt.Errorf("failed to get latest landscaper release info: read failed: %w", err)
}

var release Release
err = json.Unmarshal(body, &release)
if err != nil {
return "", err
return "", fmt.Errorf("failed to get latest landscaper release info: unmarshal failed: %w", err)
}

if release.TagName == "" {
return "", fmt.Errorf("failed to get latest landscaper release info: no tag")
}

return release.TagName, err
Expand Down

0 comments on commit adb396d

Please sign in to comment.