def checkProvisionProductStatus()

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)