X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=xapp_orchestrater%2Fdev%2Fxapp_onboarder%2Fxapp_onboarder%2Fhelm_controller%2FxApp_builder.py;h=ace97ae7b423bb4553d038846a494e7d42d7a2aa;hb=HEAD;hp=a9ecf41edb889b3f483093aa2a35a136eafafd83;hpb=e6ee210cc5a632c070c2cf7658f5479fd4e893dd;p=ric-plt%2Fappmgr.git diff --git a/xapp_orchestrater/dev/xapp_onboarder/xapp_onboarder/helm_controller/xApp_builder.py b/xapp_orchestrater/dev/xapp_onboarder/xapp_onboarder/helm_controller/xApp_builder.py index a9ecf41..ace97ae 100644 --- a/xapp_orchestrater/dev/xapp_onboarder/xapp_onboarder/helm_controller/xApp_builder.py +++ b/xapp_orchestrater/dev/xapp_onboarder/xapp_onboarder/helm_controller/xApp_builder.py @@ -51,16 +51,22 @@ class xApp(): def __init__(self, config_file, schema_file): self.config_file = config_file self.schema_file = schema_file - + + isnamepresent = 0 if 'name' not in self.config_file: - raise xAppError( - "xApp chart name not found. (Caused by: config-file.json does not contain xapp_name attribute.)", 500) + isnamepresent = 1 + if 'xapp_name' not in self.config_file: + raise xAppError( + "xApp chart name not found. (Caused by: config-file.json does not contain xapp_name attribute.)", 500) if 'version' not in self.config_file: raise xAppError( "xApp chart version not found. (Caused by: config-file.json does not contain version attribute.)", 500) - - self.chart_name = self.config_file['name'] + + if isnamepresent == 1: + self.chart_name = self.config_file['xapp_name'] + else: + self.chart_name = self.config_file['name'] self.chart_version = self.config_file['version'] self.configmap_config_json_file = copy.deepcopy(self.config_file) self.chart_workspace_path = settings.CHART_WORKSPACE_PATH + '/' + self.chart_name + '-' + self.chart_version @@ -229,6 +235,7 @@ class xApp(): raise xAppError( "xApp " + self.chart_name + '-' + self.chart_version + " distribution failed. (Caused by: " + str(err) + ")" , err.status_code) def install_chart_package(xapp_chart_name, version, namespace, overridefile): + dirTomove = "/tmp/helm_template" try: tar = tarfile.open(xapp_chart_name + "-" + version + ".tgz") tar.extractall() @@ -244,13 +251,19 @@ class xApp(): except Exception as err: print(err) status = 0 - subprocess.run(["rm", "-rf", xapp_chart_name ]) - subprocess.run(["rm", "-rf", xapp_chart_name + "-" + version + ".tgz" ]) + if (os.getcwd() != dirTomove): + subprocess.run(["mv", xapp_chart_name, dirTomove]) + PATH=xapp_chart_name + "-" + version + ".tgz" + if os.path.isfile(PATH): + subprocess.run(["mv", xapp_chart_name + "-" + version + ".tgz", dirTomove ]) return status - def uninstall_chart_package(xapp_chart_name, namespace): - + def uninstall_chart_package(xapp_chart_name, namespace, version): + dirTomove = "/tmp/helm_template/" try: + subprocess.run(["rm", "-rf", dirTomove + xapp_chart_name]) + if version != "" : + subprocess.run(["rm", "-rf", dirTomove+xapp_chart_name + "-" + version + ".tgz"]) process = subprocess.run(["helm", "delete", xapp_chart_name, "--namespace=" + namespace], stdout=PIPE, stderr=PIPE, check=True) status = 1