def OnDeploy(self, e):
        """
        * Login in epnm session with appropriate url
        """
        url = BASE_EPNM_URL.format(
            self.EPNM_IP) + RESTCONF_OPERATION_RESOURSE + PROVISION_RESOURCE
        epnm_manager = epnm_nb_api(url, self.EPNM_IP, self.USERNAME,
                                   self.PASSWORD)

        self.text.AppendText(
            '\n=========================\n* Service Provisioning Response:\n-----------------------------------'
        )
        print(
            '\n==================================\n* Service Provisioning Response:\n---------------------------------'
        )
        final_log = '\n==================================\n* Service Provisioning Response:\n---------------------------------'

        for i in self.total_service_to_create_list:

            self.text.AppendText(
                '\n\n******* Working with the Service: {} *******\n\n'.format(
                    self.df['pw_service_name'][i]))
            print(
                '\n******************* Working with the Service: {} *******************\n'
                .format(self.df['pw_service_name'][i]))
            final_log += '\n******************* Working with the Service: {} *******************\n'.format(
                self.df['pw_service_name'][i])
            """
            * 2. Create payload
            """
            payload = ncs4200_service_payload(self.rbox.GetStringSelection(),
                                              self.df, i)
            """
            * 3. Use the payload on EPNM API call
            """
            status, data, message = epnm_manager.request_post(url, payload)
            """
            * 4. Check the status
            """
            logs = check_service_status_and_report(
                epnm_manager, url, "ncs4200", "Provision", status, data,
                message, self.df["pw_service_name"][i],
                self.checkWebExBot.GetValue(),
                self.webExBot_accesstoken_Field.GetValue(),
                self.Receiver_WebExEmail_Field.GetValue())

            self.text.AppendText(logs)
            print(logs)
            final_log += '\n' + logs
        """
        * Close the session
        """
        epnm_manager.close()
Exemplo n.º 2
0
                        ###
                        payload = ncs4200_service_payload(
                            data_sheet_selection, df, i)

                        ###
                        # 3. Use the payload on EPNM API call
                        ###
                        status, data, message = epnm_manager.request_post(
                            url, payload)

                        ###
                        # 4. Check the status
                        ###
                        logs = check_service_status_and_report(
                            epnm_manager, url, "ncs4200", "Provision", status,
                            data, message, df["pw_service_name"][i],
                            status_webex_not, webEx_token,
                            notification_rx_email)

                        print(logs)
                        final_log += '\n' + logs

                ###
                # Close the session
                ###
                epnm_manager.close()

            elif action_selection.lower() == 'bulk-deletion':
                ###
                # Login in epnm session with appropriate url
                ###
def ncs4200_prov_main(epnm_ip,
                      epnm_username,
                      epnm_password,
                      filename,
                      cem_type,
                      services,
                      enable_webex_notifier=False,
                      access_token='',
                      toPersonEmail=''):
    """

    :param epnm_ip:
    :param epnm_username:
    :param epnm_password:
    :param filename:
    :param cem_type:
    :param services:
    :param enable_webex_notifier:
    :param access_token:
    :param toPersonEmail:
    :return:
    """
    """
    * 1. Extract Data
    """
    df, total_service_to_create = ncs4200_get_data_from_excel(
        filename, cem_type)

    total_service_to_create_list = validate_service_number_input(
        services, total_service_to_create)
    """
    * Login in epnm session with appropriate url
    """
    url = BASE_EPNM_URL.format(
        epnm_ip) + RESTCONF_OPERATION_RESOURSE + PROVISION_RESOURCE
    epnm_manager = epnm_nb_api(url, epnm_ip, epnm_username, epnm_password)

    print(
        '\n==================================\n* Service Provisioning Response:\n---------------------------------'
    )
    final_log = '\n==================================\n* Service Provisioning Response:\n---------------------------------'

    for i in total_service_to_create_list:

        print(
            '\n******************* Working with the Service: {} *******************\n'
            .format(df['pw_service_name'][i]))
        final_log += '\n******************* Working with the Service: {} *******************\n'.format(
            df['pw_service_name'][i])
        """
        * 2. Create payload
        """
        payload = ncs4200_service_payload(cem_type, df, i)
        """
        * 3. Use the payload on EPNM API call
        """
        status, data, message = epnm_manager.request_post(url, payload)
        """
        * 4. Check the status
        """
        logs = check_service_status_and_report(epnm_manager, url, "ncs4200",
                                               "Provision", status, data,
                                               message,
                                               df["pw_service_name"][i],
                                               enable_webex_notifier,
                                               access_token, toPersonEmail)

        print(logs)
        final_log += '\n' + logs
    """
    * Close the session
    """
    epnm_manager.close()
    return final_log