X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=solution%2Fnetwork%2Fconfig.py;h=3bee9be6556245e8be1356cf8419af13f869707b;hb=HEAD;hp=704954d2fc123aa1ced863cd16be8de9c27ffed0;hpb=5c83b3e8824796726530a5650d5538e91b1ff671;p=oam.git diff --git a/solution/network/config.py b/solution/network/config.py index 704954d..3bee9be 100644 --- a/solution/network/config.py +++ b/solution/network/config.py @@ -19,6 +19,7 @@ import os import sys import json +import re import requests import subprocess import pathlib @@ -26,11 +27,21 @@ from jproperties import Properties def get_environment_variable(name): configs = Properties() - path = pathlib.Path( os.path.dirname(os.path.abspath(__file__)) ) + path = pathlib.Path(os.path.dirname(os.path.abspath(__file__))) env_file = str(path.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 dockerFilter = subprocess.check_output("docker ps --format '{{.Names}}'", shell=True) containers = dockerFilter.splitlines()