aboutsummaryrefslogtreecommitdiffstats
path: root/src/onaptests/steps/loop/clamp.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/onaptests/steps/loop/clamp.py')
-rw-r--r--src/onaptests/steps/loop/clamp.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/src/onaptests/steps/loop/clamp.py b/src/onaptests/steps/loop/clamp.py
index 3a5c1ad..b46e723 100644
--- a/src/onaptests/steps/loop/clamp.py
+++ b/src/onaptests/steps/loop/clamp.py
@@ -12,6 +12,7 @@ import time
from onapsdk.clamp.clamp_element import Clamp
from onapsdk.sdc.service import Service
+import onaptests.utils.exceptions as onap_test_exceptions
from onapsdk.configuration import settings
from onaptests.steps.onboard.clamp import OnboardClampStep
from onaptests.steps.loop.instantiate_loop import InstantiateLoop
@@ -108,6 +109,31 @@ class ClampStep(YamlTemplateBaseStep):
@YamlTemplateBaseStep.store_state
def execute(self):
super().execute() # TODO work only the 1st time, not if already onboarded
+
+ # Before instantiating, be sure that the service has been distributed
+ service = Service(self.service_name)
+ self._logger.info("******** Check Service Distribution *******")
+ distribution_completed = False
+ nb_try = 0
+ nb_try_max = 10
+ while distribution_completed is False and nb_try < nb_try_max:
+ distribution_completed = service.distributed
+ if distribution_completed is True:
+ self._logger.info(
+ "Service Distribution for %s is sucessfully finished",
+ service.name)
+ break
+ self._logger.info(
+ "Service Distribution for %s ongoing, Wait for 60 s",
+ service.name)
+ time.sleep(60)
+ nb_try += 1
+
+ if distribution_completed is False:
+ self._logger.error(
+ "Service Distribution for %s failed !!",service.name)
+ raise onap_test_exceptions.ServiceDistributionException
+
# time to wait for template load in CLAMP
self._logger.info("Wait a little bit to give a chance to the distribution")
time.sleep(settings.CLAMP_DISTRIBUTION_TIMER)