X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=n2vc%2Fconfig.py;h=374ec73daa6572a5c1769ad731c1ad617368ed47;hp=59a74be4e1f66e99eeff60bd8741c87a3c6cde39;hb=82b591ceed704c798ead2d9104085a08e75b511b;hpb=a71d4a04c1e8ad3ffe1a129024e6dbc14d6d3bd5 diff --git a/n2vc/config.py b/n2vc/config.py index 59a74be..374ec73 100644 --- a/n2vc/config.py +++ b/n2vc/config.py @@ -12,6 +12,26 @@ # See the License for the specific language governing permissions and # limitations under the License. +import os +import typing + + +class EnvironConfig(dict): + prefixes = ["OSMLCM_VCA_", "OSMMON_VCA_"] + + def __init__(self, prefixes: typing.List[str] = None): + if prefixes: + self.prefixes = prefixes + for key, value in os.environ.items(): + if any(key.startswith(prefix) for prefix in self.prefixes): + self.__setitem__(self._get_renamed_key(key), value) + + def _get_renamed_key(self, key: str) -> str: + for prefix in self.prefixes: + key = key.replace(prefix, "") + return key.lower() + + MODEL_CONFIG_KEYS = [ "agent-metadata-url", "agent-stream",