diff --git a/cli/app/rollback.go b/cli/app/rollback.go index 36d3c365..98acf56f 100644 --- a/cli/app/rollback.go +++ b/cli/app/rollback.go @@ -178,6 +178,7 @@ recipes. if err != nil { logrus.Fatal(err) } + config.ExposeAllEnv(stackName, compose, app.Env) if !internal.Force { if err := internal.NewVersionOverview(app, deployedVersion, chosenDowngrade, ""); err != nil { diff --git a/cli/app/upgrade.go b/cli/app/upgrade.go index 127497dc..fa46b8d3 100644 --- a/cli/app/upgrade.go +++ b/cli/app/upgrade.go @@ -189,6 +189,7 @@ recipes. if err != nil { logrus.Fatal(err) } + config.ExposeAllEnv(stackName, compose, app.Env) if err := internal.NewVersionOverview(app, deployedVersion, chosenUpgrade, releaseNotes); err != nil { logrus.Fatal(err) diff --git a/cli/internal/deploy.go b/cli/internal/deploy.go index fe8a2ab0..6b3047fb 100644 --- a/cli/internal/deploy.go +++ b/cli/internal/deploy.go @@ -134,6 +134,7 @@ func DeployAction(c *cli.Context) error { if err != nil { logrus.Fatal(err) } + config.ExposeAllEnv(app.StackName(), compose, app.Env) if err := DeployOverview(app, version, "continue with deployment?"); err != nil { logrus.Fatal(err) diff --git a/pkg/config/app.go b/pkg/config/app.go index 17af55c4..15253634 100644 --- a/pkg/config/app.go +++ b/pkg/config/app.go @@ -447,3 +447,20 @@ func GetAppComposeConfig(recipe string, opts stack.Deploy, appEnv AppEnv) (*comp return compose, nil } + +// ExposeAllEnv exposes all env variables to the app container +func ExposeAllEnv(stackName string, compose *composetypes.Config, appEnv AppEnv) { + for _, service := range compose.Services { + if service.Name == "app" { + logrus.Debugf("Add the following environment to the app service config of %s:", stackName) + for k, v := range appEnv { + _, exists := service.Environment[k] + if !exists { + value := v + service.Environment[k] = &value + logrus.Debugf("Add Key: %s Value: %s to %s", k, value, stackName) + } + } + } + } +}