forked from toolshed/abra
		
	fix: ensure latest checked out for recipe upgrade
This commit is contained in:
		| @ -91,7 +91,7 @@ func ensureServerFlag() error { | |||||||
|  |  | ||||||
| // NewAction is the new app creation logic | // NewAction is the new app creation logic | ||||||
| func NewAction(c *cli.Context) error { | func NewAction(c *cli.Context) error { | ||||||
| 	recipe := ValidateRecipeWithPrompt(c) | 	recipe := ValidateRecipeWithPrompt(c, false) | ||||||
|  |  | ||||||
| 	if err := recipePkg.EnsureUpToDate(recipe.Name); err != nil { | 	if err := recipePkg.EnsureUpToDate(recipe.Name); err != nil { | ||||||
| 		logrus.Fatal(err) | 		logrus.Fatal(err) | ||||||
|  | |||||||
| @ -45,7 +45,7 @@ func ValidateRecipe(c *cli.Context) recipe.Recipe { | |||||||
|  |  | ||||||
| // ValidateRecipeWithPrompt ensures a recipe argument is present before | // ValidateRecipeWithPrompt ensures a recipe argument is present before | ||||||
| // validating, asking for input if required. | // validating, asking for input if required. | ||||||
| func ValidateRecipeWithPrompt(c *cli.Context) recipe.Recipe { | func ValidateRecipeWithPrompt(c *cli.Context, ensureLatest bool) recipe.Recipe { | ||||||
| 	recipeName := c.Args().First() | 	recipeName := c.Args().First() | ||||||
|  |  | ||||||
| 	if recipeName == "" && !NoInput { | 	if recipeName == "" && !NoInput { | ||||||
| @ -94,6 +94,12 @@ func ValidateRecipeWithPrompt(c *cli.Context) recipe.Recipe { | |||||||
| 		ShowSubcommandHelpAndError(c, errors.New("no recipe name provided")) | 		ShowSubcommandHelpAndError(c, errors.New("no recipe name provided")) | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
|  | 	if ensureLatest { | ||||||
|  | 		if err := recipe.EnsureLatest(recipeName); err != nil { | ||||||
|  | 			logrus.Fatal(err) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	chosenRecipe, err := recipe.Get(recipeName) | 	chosenRecipe, err := recipe.Get(recipeName) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		logrus.Fatal(err) | 		logrus.Fatal(err) | ||||||
|  | |||||||
| @ -59,7 +59,7 @@ your SSH keys configured on your account. | |||||||
| 	Before:       internal.SubCommandBefore, | 	Before:       internal.SubCommandBefore, | ||||||
| 	BashComplete: autocomplete.RecipeNameComplete, | 	BashComplete: autocomplete.RecipeNameComplete, | ||||||
| 	Action: func(c *cli.Context) error { | 	Action: func(c *cli.Context) error { | ||||||
| 		recipe := internal.ValidateRecipeWithPrompt(c) | 		recipe := internal.ValidateRecipeWithPrompt(c, false) | ||||||
|  |  | ||||||
| 		imagesTmp, err := getImageVersions(recipe) | 		imagesTmp, err := getImageVersions(recipe) | ||||||
| 		if err != nil { | 		if err != nil { | ||||||
|  | |||||||
| @ -41,7 +41,7 @@ auto-generate it for you. The <recipe> configuration will be updated on the | |||||||
| local file system. | local file system. | ||||||
| `, | `, | ||||||
| 	Action: func(c *cli.Context) error { | 	Action: func(c *cli.Context) error { | ||||||
| 		recipe := internal.ValidateRecipeWithPrompt(c) | 		recipe := internal.ValidateRecipeWithPrompt(c, false) | ||||||
|  |  | ||||||
| 		mainApp, err := internal.GetMainAppImage(recipe) | 		mainApp, err := internal.GetMainAppImage(recipe) | ||||||
| 		if err != nil { | 		if err != nil { | ||||||
|  | |||||||
| @ -60,7 +60,7 @@ You may invoke this command in "wizard" mode and be prompted for input: | |||||||
| 	}, | 	}, | ||||||
| 	Before: internal.SubCommandBefore, | 	Before: internal.SubCommandBefore, | ||||||
| 	Action: func(c *cli.Context) error { | 	Action: func(c *cli.Context) error { | ||||||
| 		recipe := internal.ValidateRecipeWithPrompt(c) | 		recipe := internal.ValidateRecipeWithPrompt(c, true) | ||||||
|  |  | ||||||
| 		bumpType := btoi(internal.Major)*4 + btoi(internal.Minor)*2 + btoi(internal.Patch) | 		bumpType := btoi(internal.Major)*4 + btoi(internal.Minor)*2 + btoi(internal.Patch) | ||||||
| 		if bumpType != 0 { | 		if bumpType != 0 { | ||||||
|  | |||||||
		Reference in New Issue
	
	Block a user