in internal/updatecheck.go [43:69]
func getLatestLightsailctlVersion(
ctx context.Context,
g ContainerAPIMetadataGetter,
) (Semver, error) {
res, err := g.GetContainerAPIMetadataWithContext(ctx, new(lightsail.GetContainerAPIMetadataInput))
if err != nil {
return "", fmt.Errorf("could not get latest lightsailctl version: %v", err)
}
var rawSemver string
for _, md := range res.Metadata {
if v := aws.StringValue(md["name"]); v == "lightsailctlVersion" {
rawSemver = aws.StringValue(md["value"])
}
}
if rawSemver == "" {
return "", fmt.Errorf("latest lightsailctl version was not in GetContainerAPIMetadata response")
}
ver := Semver(rawSemver)
if !ver.IsValid() {
return "", fmt.Errorf("latest lightsailctl version is not a semver: %q", rawSemver)
}
return ver, nil
}