aboutsummaryrefslogtreecommitdiffstats
path: root/catalog-be/src/main/resources/scripts/sdcBePy
diff options
context:
space:
mode:
Diffstat (limited to 'catalog-be/src/main/resources/scripts/sdcBePy')
-rwxr-xr-xcatalog-be/src/main/resources/scripts/sdcBePy/common/sdcBeProxy.py3
-rw-r--r--catalog-be/src/main/resources/scripts/sdcBePy/tosca/imports/run.py25
2 files changed, 18 insertions, 10 deletions
diff --git a/catalog-be/src/main/resources/scripts/sdcBePy/common/sdcBeProxy.py b/catalog-be/src/main/resources/scripts/sdcBePy/common/sdcBeProxy.py
index f2bef53564..0c71a382d1 100755
--- a/catalog-be/src/main/resources/scripts/sdcBePy/common/sdcBeProxy.py
+++ b/catalog-be/src/main/resources/scripts/sdcBePy/common/sdcBeProxy.py
@@ -49,6 +49,9 @@ class SdcBeProxy:
'consumerPassword': password
}))
+ def disable_locking(self, disable):
+ return self.con.post("/sdc2/rest/v1/catalog/lock", disable)
+
def get_normatives(self):
return self.con.get("/sdc2/rest/v1/screen", with_buffer=True)
diff --git a/catalog-be/src/main/resources/scripts/sdcBePy/tosca/imports/run.py b/catalog-be/src/main/resources/scripts/sdcBePy/tosca/imports/run.py
index 067f110efc..1df54ca50e 100644
--- a/catalog-be/src/main/resources/scripts/sdcBePy/tosca/imports/run.py
+++ b/catalog-be/src/main/resources/scripts/sdcBePy/tosca/imports/run.py
@@ -17,22 +17,27 @@ def main(sdc_be_proxy, update_version):
# base_file_location = os.getcwd() + "/../../../import/tosca/"
base_file_location = os.getcwd() + os.path.sep
logger.debug("working directory =" + base_file_location)
-
- model_import_manager = ModelImportManager(Path(base_file_location) / 'models', ModelClient(sdc_be_proxy))
+ if sdc_be_proxy.disable_locking("true") != 200:
+ raise RuntimeError("Failed to disable locking")
try:
- model_import_manager.create_models()
+ model_import_manager = ModelImportManager(Path(base_file_location) / 'models', ModelClient(sdc_be_proxy))
+ try:
+ model_import_manager.create_models()
+ except Exception as ex:
+ logger.log("An error has occurred while uploading the models: ", str(ex))
+ raise ex
+ process_element_list(normativeElementsList.get_normative_element_candidate_list(base_file_location), sdc_be_proxy)
+ process_type_list(normativeTypesList.get_normative_type_candidate_list(base_file_location), sdc_be_proxy, update_version)
+ process_element_list(normativeElementsList.get_normative_element_with_metadata_list(base_file_location), sdc_be_proxy)
except Exception as ex:
- logger.log("An error has occurred while uploading the models: ", str(ex))
+ logger.log("An error has occurred while uploading elements and types: ", str(ex))
raise ex
-
- process_element_list(normativeElementsList.get_normative_element_candidate_list(base_file_location), sdc_be_proxy)
- process_type_list(normativeTypesList.get_normative_type_candidate_list(base_file_location), sdc_be_proxy, update_version)
- process_element_list(normativeElementsList.get_normative_element_with_metadata_list(base_file_location), sdc_be_proxy)
-
+ finally:
+ if sdc_be_proxy.disable_locking("false") != 200:
+ raise RuntimeError("Failed to enable locking")
logger.log("Script end ->", "All normatives imported successfully!")
logger.print_and_exit(0, None)
-
def run():
sdc_be_proxy, update_version = parse_and_create_proxy()
main(sdc_be_proxy, update_version)