X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=solution%2Fsmo%2Fcommon%2Fidentity%2Fconfig.py;h=5a8bf44defe8c14ee6e235b212aa3c55be6df8e6;hb=refs%2Fchanges%2F05%2F11505%2F2;hp=22ef6413e1185864c1429e4b5df51501082c34bf;hpb=5c83b3e8824796726530a5650d5538e91b1ff671;p=oam.git diff --git a/solution/smo/common/identity/config.py b/solution/smo/common/identity/config.py index 22ef641..5a8bf44 100644 --- a/solution/smo/common/identity/config.py +++ b/solution/smo/common/identity/config.py @@ -23,6 +23,7 @@ import json import time import getpass import requests +import re import warnings from jproperties import Properties from typing import List @@ -36,7 +37,17 @@ def get_environment_variable(name): env_file = str(path.parent.absolute()) + '/.env' with open(env_file, "rb") as read_prop: configs.load(read_prop) - return configs.get(name).data + value = configs.get(name).data + + regex = r"\$\{([^\}]+)\}" + matches = re.finditer(regex, value) + while True: + match = next(matches, None) + if match is None: + break + inner = get_environment_variable(match.group(1)) + value = value.replace("${" + match.group(1) + "}", inner ) + return value def load_arguments(args: List[str]) -> tuple: @@ -63,6 +74,7 @@ def load_arguments(args: List[str]) -> tuple: def isReady(timeoutSeconds=180): url = getBaseUrl() + print(f'url={url}') while timeoutSeconds > 0: try: response = requests.get(url, verify=False, headers={})