diff --git a/cli/app/upgrade.go b/cli/app/upgrade.go index 7083a145..5e6ef87d 100644 --- a/cli/app/upgrade.go +++ b/cli/app/upgrade.go @@ -117,7 +117,7 @@ beforehand. See "abra app backup" for more.`, } if deployMeta.Version != config.UNKNOWN_DEFAULT && chosenUpgrade == "" { - upgradeAvailable, err := ensureUpgradesAvailable(versions, &availableUpgrades, deployMeta) + upgradeAvailable, err := ensureUpgradesAvailable(app, versions, &availableUpgrades, deployMeta) if err != nil { log.Fatal(err) } @@ -314,18 +314,18 @@ func getReleaseNotes( ) error { parsedChosenUpgrade, err := tagcmp.Parse(chosenUpgrade) if err != nil { - return err + return fmt.Errorf("parsing chosen upgrade version failed: %s", err) } parsedDeployedVersion, err := tagcmp.Parse(deployMeta.Version) if err != nil { - return err + return fmt.Errorf("parsing deployment version failed: %s", err) } for _, version := range internal.SortVersionsDesc(versions) { parsedVersion, err := tagcmp.Parse(version) if err != nil { - return err + return fmt.Errorf("parsing recipe version failed: %s", err) } if parsedVersion.IsGreaterThan(parsedDeployedVersion) && @@ -351,19 +351,20 @@ func getReleaseNotes( // ensureUpgradesAvailable ensures that there are available upgrades. func ensureUpgradesAvailable( + app app.App, versions []string, availableUpgrades *[]string, deployMeta stack.DeployMeta, ) (bool, error) { parsedDeployedVersion, err := tagcmp.Parse(deployMeta.Version) if err != nil { - return false, err + return false, fmt.Errorf("parsing deployed version failed: %s", err) } for _, version := range versions { parsedVersion, err := tagcmp.Parse(version) if err != nil { - return false, err + return false, fmt.Errorf("parsing recipe version failed: %s", err) } if parsedVersion.IsGreaterThan(parsedDeployedVersion) && diff --git a/go.mod b/go.mod index 4c6bfc38..17689d4e 100644 --- a/go.mod +++ b/go.mod @@ -5,7 +5,7 @@ go 1.23.5 toolchain go1.24.1 require ( - coopcloud.tech/tagcmp v0.0.0-20250427094623-9ea3bbbde8e5 + coopcloud.tech/tagcmp v0.0.0-20250818180036-0ec1b205b5ca git.coopcloud.tech/toolshed/godotenv v1.5.2-0.20250103171850-4d0ca41daa5c github.com/AlecAivazis/survey/v2 v2.3.7 github.com/charmbracelet/bubbletea v1.3.6 diff --git a/go.sum b/go.sum index 8db9fdbd..7c621a59 100644 --- a/go.sum +++ b/go.sum @@ -26,6 +26,8 @@ coopcloud.tech/tagcmp v0.0.0-20230809071031-eb3e7758d4eb h1:Ws6WEwKXeaYEkfdkX6Aq coopcloud.tech/tagcmp v0.0.0-20230809071031-eb3e7758d4eb/go.mod h1:ESVm0wQKcbcFi06jItF3rI7enf4Jt2PvbkWpDDHk1DQ= coopcloud.tech/tagcmp v0.0.0-20250427094623-9ea3bbbde8e5 h1:tphJCjFJw9fdjyKnbU0f7f3z5KtYE8VbUcAfu+oHKg8= coopcloud.tech/tagcmp v0.0.0-20250427094623-9ea3bbbde8e5/go.mod h1:ESVm0wQKcbcFi06jItF3rI7enf4Jt2PvbkWpDDHk1DQ= +coopcloud.tech/tagcmp v0.0.0-20250818180036-0ec1b205b5ca h1:gSD53tBAsbIGq4SnFfq+mEep6foekQ2a5ea7b38qkm0= +coopcloud.tech/tagcmp v0.0.0-20250818180036-0ec1b205b5ca/go.mod h1:ESVm0wQKcbcFi06jItF3rI7enf4Jt2PvbkWpDDHk1DQ= dario.cat/mergo v1.0.1 h1:Ra4+bf83h2ztPIQYNP99R6m+Y7KfnARDfID+a+vLl4s= dario.cat/mergo v1.0.1/go.mod h1:uNxQE+84aUszobStD9th8a29P2fMDhsBdgRYvZOxGmk= dario.cat/mergo v1.0.2 h1:85+piFYR1tMbRrLcDwR18y4UKJ3aH1Tbzi24VRW1TK8=