diff --git a/cli/app/upgrade.go b/cli/app/upgrade.go index d29c8c9fa..9333571aa 100644 --- a/cli/app/upgrade.go +++ b/cli/app/upgrade.go @@ -67,7 +67,7 @@ recipes. logrus.Fatal(err) } - if len(versions) == 0 { + if len(versions) == 0 && !internal.Chaos { logrus.Fatalf("no versions available '%s' in recipe catalogue?", app.Type) } @@ -93,13 +93,14 @@ recipes. } } - if len(availableUpgrades) == 0 { + if len(availableUpgrades) == 0 && !internal.Force { logrus.Fatal("no available upgrades, you're on latest") + availableUpgrades = versions } } var chosenUpgrade string - if !internal.Chaos { + if len(availableUpgrades) > 0 && !internal.Chaos { if internal.Force { chosenUpgrade = availableUpgrades[len(availableUpgrades)-1] logrus.Debugf("choosing '%s' as version to upgrade to", chosenUpgrade) @@ -153,10 +154,8 @@ recipes. logrus.Fatal(err) } - if !internal.Force { - if err := NewVersionOverview(app, deployedVersion, chosenUpgrade); err != nil { - logrus.Fatal(err) - } + if err := NewVersionOverview(app, deployedVersion, chosenUpgrade); err != nil { + logrus.Fatal(err) } if err := stack.RunDeploy(cl, deployOpts, compose); err != nil {