Introduction
Currently, the default application configuration is present inside the docker images and it gets overridden when it is deployed using the helm. The issue with this approach is
- maintaining same values at two places
- the possibility of missing a few configurations in the OOM
- having obsolete values in OOM
To avoid it, we can keep only those properties in the OOM which needs to be changed based on deployment and provide an ability for overriding any property if required.
Possible Solutions
In any spring application, application properties can be provided in multiple ways, which are mentioned below in ascending order of priority.
- application.yml in the resources folderĀ
- application-<profile>.yml in the resources folder
- environment variables
- system property to JVM using -Dkey=value