Exemple #1
0
    def create_smis_provider(self):
        payload = ConfigurationUtils.load_smis_details()
        post_response, status = self.communication_utils.post('vdc/smis-providers.json', json_payload=payload)

        if not status_completed(status):
            task_id, state = fetch_stats(post_response)
            CommonUtils.log_this(__name__, "STATE is {0}".format(state.upper()), "")
            self.free_token = False
            result = "Task Completed" if self._prompt_status(task_id, 'Creating SMI-S Provider') else "Task Pending..!!"

        return result
Exemple #2
0
    def create_cmcne_fabric_manager(self):
        payload = ConfigurationUtils.load_cmcne_details()
        post_response, status = self.communication_utils.post('vdc/network-systems', json_payload=payload)

        if not status_completed(status):
            task_id, state = fetch_stats(post_response)
            CommonUtils.log_this(__name__, "STATE is {0}".format(state.upper()), "")
            self.free_token = False
            result = "Task Completed" if self._prompt_status(task_id, 'Creating CMCNE Fabric') else "Task Pending..!!"

        return result
Exemple #3
0
    def create_hosts(self):
        payloads = ConfigurationUtils.load_hosts_details()
        tenant_id = self.get_tenant()
        url = '{0}/hosts.json'.format(tenant_id).replace("/", "", 1)

        for i in range(0, len(payloads)):
            post_response, status = self.communication_utils.post(url, json_payload=payloads[i])

            if not status_completed(status):
                task_id, state = fetch_stats(post_response)
                CommonUtils.log_this(__name__, "STATE is {0}".format(state.upper()), "")
                result = "Task Completed" if self._prompt_status(task_id, 'Creating Host {0}'.format(i)) else "Task Pending..!!"
        return result
Exemple #4
0
    def _prompt_status(self, task_id, task_name):

        self.free_token = False
        returnValue = False

        for i in range(0, STATUS_COUNT_THRESHOLD):

            get_response, status = self.communication_utils.get('vdc/tasks/{0}.json'.format(task_id))
            task_id, state = fetch_stats(get_response)
            CommonUtils.log_this(__name__, "{0} is {1}".format(task_name, state.upper()), "")

            if state == 'ready':
                self.free_token = True
                returnValue = True
                break

            else:
                if self.status_counter == STATUS_COUNT_THRESHOLD:
                    returnValue = False
                    break
                time.sleep(1)

        return returnValue