diff --git a/cli/internal/validate.go b/cli/internal/validate.go index 2a26fce5e..3819d9404 100644 --- a/cli/internal/validate.go +++ b/cli/internal/validate.go @@ -41,6 +41,10 @@ func ValidateApp(c *cli.Context) config.App { logrus.Fatal(err) } + if err := recipe.EnsureExists(app.Type); err != nil { + logrus.Fatal(err) + } + logrus.Debugf("validated '%s' as app argument", appName) return app diff --git a/cli/recipe/release.go b/cli/recipe/release.go index bafa0760d..f9c10b194 100644 --- a/cli/recipe/release.go +++ b/cli/recipe/release.go @@ -9,6 +9,7 @@ import ( "coopcloud.tech/abra/cli/internal" "coopcloud.tech/abra/pkg/config" "coopcloud.tech/abra/pkg/recipe" + recipePkg "coopcloud.tech/abra/pkg/recipe" "coopcloud.tech/tagcmp" "github.com/AlecAivazis/survey/v2" "github.com/go-git/go-git/v5" @@ -92,6 +93,11 @@ or a rollback of an app. imagesTmp := getImageVersions(recipe) mainApp := getMainApp(recipe) mainAppVersion := imagesTmp[mainApp] + + if err := recipePkg.EnsureExists(recipe.Name); err != nil { + logrus.Fatal(err) + } + if mainAppVersion == "" { logrus.Fatal("main app version is empty?") }