"overlapping)")
def execute(self):
- assert super(CloudifyIms, self).execute() == 0
- # pylint: disable=too-many-locals,too-many-statements
"""
Deploy Cloudify Manager.
network, security group, fip, VM creation
"""
+ assert super(CloudifyIms, self).execute() == 0
start_time = time.time()
self.orig_cloud.set_network_quotas(
self.project.project.name,
project_domain_name=os.environ.get(
'OS_PROJECT_DOMAIN_NAME', 'Default'))
self.__logger.info("Set creds for cloudify manager %s", cfy_creds)
- secrets_list = self.cfy_client.secrets.list()
- for k, val in six.iteritems(cfy_creds):
- if not any(d.get('key', None) == k for d in secrets_list):
- self.cfy_client.secrets.create(k, val)
- else:
- self.cfy_client.secrets.update(k, val)
+
+ for loop in range(10):
+ try:
+ secrets_list = self.cfy_client.secrets.list()
+ for k, val in six.iteritems(cfy_creds):
+ if not any(d.get('key', None) == k for d in secrets_list):
+ self.cfy_client.secrets.create(k, val)
+ else:
+ self.cfy_client.secrets.update(k, val)
+ break
+ except Exception: # pylint: disable=broad-except
+ self.__logger.info(
+ "try %s: Cannot create secrets", loop + 1)
+ time.sleep(30)
+ else:
+ self.__logger.error("Cannot create secrets")
+ return 1
duration = time.time() - start_time
return False
ellis_ip = self.cfy_client.deployments.outputs.get(
- self.vnf['descriptor'].get('name'))['outputs']['ellis_ip']
+ self.vnf['descriptor'].get('name'))['outputs']['ellis_ip']
self.clearwater = clearwater.ClearwaterTesting(self.case_name,
ellis_ip)
self.clearwater.availability_check_by_creating_numbers()
dep_name = self.vnf['descriptor'].get('name')
# kill existing execution
self.__logger.info('Deleting the current deployment')
- exec_list = self.cfy_client.executions.list(dep_name)
+ exec_list = self.cfy_client.executions.list()
for execution in exec_list:
if execution['status'] == "started":
try:
self.vnf['descriptor'].get('name'))
except Exception: # pylint: disable=broad-except
self.__logger.exception("Some issue during the undeployment ..")
-
+ if self.image_alt:
+ self.cloud.delete_image(self.image_alt)
+ if self.flavor_alt:
+ self.orig_cloud.delete_flavor(self.flavor_alt.id)
super(CloudifyIms, self).clean()