From f2b02e39a79fa71973db83a5682d8cbf4e4d98f1 Mon Sep 17 00:00:00 2001 From: decentral1se Date: Tue, 2 Nov 2021 14:38:53 +0100 Subject: [PATCH] fix: allow config to open broken env files Closes https://git.coopcloud.tech/coop-cloud/organising/issues/223. --- cli/app/config.go | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/cli/app/config.go b/cli/app/config.go index 9d0a67828..e3bcc25df 100644 --- a/cli/app/config.go +++ b/cli/app/config.go @@ -1,6 +1,7 @@ package app import ( + "errors" "fmt" "os" "os/exec" @@ -17,7 +18,21 @@ var appConfigCommand = &cli.Command{ Aliases: []string{"c"}, Usage: "Edit app config", Action: func(c *cli.Context) error { - app := internal.ValidateApp(c) + appName := c.Args().First() + + if appName == "" { + internal.ShowSubcommandHelpAndError(c, errors.New("no app provided")) + } + + files, err := config.LoadAppFiles("") + if err != nil { + logrus.Fatal(err) + } + + appFile, exists := files[appName] + if !exists { + logrus.Fatalf("cannot find app with name '%s'", appName) + } ed, ok := os.LookupEnv("EDITOR") if !ok { @@ -30,7 +45,7 @@ var appConfigCommand = &cli.Command{ } } - cmd := exec.Command(ed, app.Path) + cmd := exec.Command(ed, appFile.Path) cmd.Stdin = os.Stdin cmd.Stdout = os.Stdout cmd.Stderr = os.Stderr