in src/servicecatalog.py [0:0]
def checkProvisionProductStatus(self, Id):
"""
this method is used to check the status of provisioned product
:param Id:
:return:
"""
while (True):
response = self.sc_client.describe_provisioned_product(
AcceptLanguage='en',
Id=Id
)
if (response['ProvisionedProductDetail']['Status'] == 'AVAILABLE'):
logger.info("==== Product has been sucessfully created or updated ====")
return
elif (response['ProvisionedProductDetail']['Status'] == 'UNDER_CHANGE' or
response['ProvisionedProductDetail']['Status'] == 'PLAN_IN_PROGRESS'):
logger.info("==== Product execution is in progress, please wait ====")
time.sleep(20)
elif (response['ProvisionedProductDetail']['Status'] == 'ERROR' or response['ProvisionedProductDetail'][
'Status'] == 'TAINTED'):
logger.info("==== Product provisiong has failed ====")
sys.exit(1)