Description
Current Situation for rendering env vars
Rendering of environment variables via confp as documented in #209 (comment) requires an additional render-config file render.yaml
as well as an additional parameter --render render.yaml
for the invocation, in order to enabeling render of config variables like {{ env('MQTT_PASSWORD') }}
.
Proposed Change
Make the rendering of {{ env('MQTT_PASSWORD') }}
from the config the default behaviour of mqtt-io. The parameter --render
would remain untouched and still allow for custom rendering from other backends.
Open Question
- Would defaulting to "--render type=env" break anything?
Benefits
This change would enable simple passing of env variables like secrets to mqtt-io. Passing of env variables is a security best practice and could be used for containers under podman
or docker
as well as in systemd units and the like. Env var passing allows for the separation of configuration and secrets and would enhance mqtt-io towards better usability.