Closed DanielFroehlich closed 5 years ago
Use a ConfigMap to add a properties/json/yml/ini file with key/value pairs. Keys are prefixed with component name or "common". For secrets, OpenShift Secrets are used (need to find out if one could refer to a secret in a ConfigMap - if not, then this config parameters are mapped via env variables from secrets) Reading/parsing of the config file could be done by a language specific config framework.
Use archaius framework for java, and additional frameworks that can connect to archaius (like prana for nodejs.
--- needs investigation ----
--- needs investigation ----
--- needs investigation ----
Decided by Daniel just be the fact that there is no time to investigate other options, we go with ConfigMap and Secrets.
Need to decide on Config Mmgt. I.e. how to we get config parameters / variables into components.
High Level Requirements: 1: MUST be usable by different component types (nodejs, java, ...) 2: a central config which is common to all components (openDJ domain name, project name, Logo URL, max. event duration etc.) MUST be easily mapped to all components. MIGHT be used as single config file with also component specific values in it. 3: a component specific config file SHOULD be also possible
4: a change of any config file SHOULD be picked up at runtime. 5: Overriding a config parameter at a different stage SHOULD be supported. E.g. in DEV stage config a value is set, and if in PROD stage config that value is not defined, the value from DEV is used. 6: Encryption / Hiding of secrets (e.g. passwords, client secrets) SHOULD be possible.