in src/servicecatalog.py [0:0]
def deployStack(self):
"""
This method is used to initiate the product deployment
:return:
"""
response = self.sc_client.scan_provisioned_products(
AcceptLanguage='en',
AccessLevelFilter={
'Key': 'Account',
'Value': 'self'
}
)
products = response['ProvisionedProducts']
update = False
for product in products:
if (product['Name'] == self.applicationName):
if (product['Status'] == 'ERROR'):
logger.info("==== Product Status is Error hence deleting it ====")
response = self.sc_client.terminate_provisioned_product(
ProvisionedProductId=product['Id'],
IgnoreErrors=True,
AcceptLanguage='en'
)
time.sleep(20)
else:
update = True
logging.info("==== Product has been provisioned, now updating the product with version ====")
self.update_provisioned_product(product['Id'], self.checkVersion(self.produtId),
self.produtId)
else:
if (not update):
logging.info("==== Provisioning the product ====")
self.provisionProduct(self.produtId)