From 9591e91ed6656c434bfd572c3f83cba2ed2a9724 Mon Sep 17 00:00:00 2001 From: Moritz Date: Wed, 9 Nov 2022 20:19:30 +0100 Subject: [PATCH] feat(cmd): make env variables accessible for local abra.sh commands --- cli/app/cmd.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/cli/app/cmd.go b/cli/app/cmd.go index 6420c967..eb4ebcc0 100644 --- a/cli/app/cmd.go +++ b/cli/app/cmd.go @@ -74,13 +74,17 @@ Example: logrus.Debugf("--local detected, running %s on local work station", cmdName) + var exportEnv string + for k, v := range app.Env { + exportEnv = exportEnv + fmt.Sprintf("%s='%s'; ", k, v) + } var sourceAndExec string if hasCmdArgs { logrus.Debugf("parsed following command arguments: %s", parsedCmdArgs) - sourceAndExec = fmt.Sprintf("TARGET=local; APP_NAME=%s; STACK_NAME=%s; . %s; %s %s", app.Name, app.StackName(), abraSh, cmdName, parsedCmdArgs) + sourceAndExec = fmt.Sprintf("TARGET=local; APP_NAME=%s; STACK_NAME=%s; %s . %s; %s %s", app.Name, app.StackName(), exportEnv, abraSh, cmdName, parsedCmdArgs) } else { logrus.Debug("did not detect any command arguments") - sourceAndExec = fmt.Sprintf("TARGET=local; APP_NAME=%s; STACK_NAME=%s; . %s; %s", app.Name, app.StackName(), abraSh, cmdName) + sourceAndExec = fmt.Sprintf("TARGET=local; APP_NAME=%s; STACK_NAME=%s; %s . %s; %s", app.Name, app.StackName(), exportEnv, abraSh, cmdName) } cmd := exec.Command("/bin/sh", "-c", sourceAndExec)