Is it possible for Deis Workflow read values from ConfigMap?

2/15/2017

I have installed Deis Workflow v.2.11 in a GKE cluster, and some of our applications share values in common, like a proxy URL e credentials. I can use these values putting them into environment variables, or even in a .env file. However, every new application, I need to create a .env file, with shared values and then, call

deis config:push

If one of those shared value changes, I need to adjust every configuration of every app and restart them. I would like to modify the value in ConfigMap once and, after changes, Deis restart the applications.

Does anyone know if it is possible to read values from Kubernetes ConfigMap and to put them into Deis environment variables? Moreover, if yes, how do I do it?

-- eduardosouza
deis
kubernetes

3 Answers

6/10/2018

You could update the configMap, but each of the applications would need to run kubectl replace -f path/accessible/for/everyone/configmap.yaml to get the variables updated.

So, I would say yes, at Kubernetes level you can do it. Just figure out the best way for your apps to update the configMap. I don't have details of your use case, so I can't tell you specific ways.

-- suren
Source: StackOverflow

6/10/2018

Currently there is no support for configMaps in Deis Workflow v2.18.0 . We would appreciate a PR into the Hephy Workflow (open source fork of Deis Workflow). https://github.com/teamhephy/controller

There is no functionality right now to capture configMap in by the init scripts of the containers.

-- Cryptophobia
Source: StackOverflow

2/15/2017

I believe what you're looking for is a way to set environment variables globally across all applications. That is currently not implemented. However, please feel free to hack up a PR and we'd likely accept it!

https://github.com/deis/controller/issues/383

https://github.com/deis/controller/issues/1219

-- bacongobbler
Source: StackOverflow