One of the important requirements of modern-day applications is the ability to manage configuration as code. Configuration as code means that the file being used to configure your system is immutable to the application, except in cases where the password and secrets are in plain-text, in which case the application will encrypt and correct the encrypted string back to the file.
Configuration as code can be used in “cloud native” setups, where the configuration file can be “injected” when the application starts up. This means that you can modify the configuration externally and without having the application running, and simply “provide” it to the application at startup.
The modified file is then placed in the correct filesystem path (for Linux, Docker, RPM, Debian installations) or as a secret in Helm installations using the Helm values.yaml
file.