Exemplo n.º 1
0
    def __init__(self, username, uri, method, agent_id,
                 app_id, operation_id, reboot_required,
                 success, data, apps_to_delete,
                 apps_to_add, error=None):

        self.agent_id = agent_id
        self.operation_id = operation_id
        self.username = username
        self.uri = uri
        self.method = method
        self.agent_data = get_agent_info(agentid=self.agent_id)
        self.customer_name = self.agent_data['customer_name']
        self.date_now = mktime(datetime.now().timetuple())
        self.error = error
        self.reboot_required = reboot_required
        self.success = success
        self.data = data
        self.apps_to_delete = apps_to_delete
        self.apps_to_add = apps_to_add
        self.app_id = app_id
        self.oper_info=get_oper_info(operid=self.operation_id)
        self.operation = (
            Operation(
                self.username, self.customer_name,
                self.uri, self.method
            )
        )
Exemplo n.º 2
0
    def __init__(self,
                 username,
                 uri,
                 method,
                 agent_id,
                 app_id,
                 operation_id,
                 reboot_required,
                 success,
                 data,
                 apps_to_delete,
                 apps_to_add,
                 error=None):

        self.agent_id = agent_id
        self.operation_id = operation_id
        self.username = username
        self.uri = uri
        self.method = method
        self.agent_data = get_agent_info(agentid=self.agent_id)
        self.customer_name = self.agent_data['customer_name']
        self.date_now = mktime(datetime.now().timetuple())
        self.error = error
        self.reboot_required = reboot_required
        self.success = success
        self.data = data
        self.apps_to_delete = apps_to_delete
        self.apps_to_add = apps_to_add
        self.app_id = app_id
        self.oper_info = get_oper_info(operid=self.operation_id)
        self.operation = (Operation(self.username, self.customer_name,
                                    self.uri, self.method))
Exemplo n.º 3
0
def send_notifications(username, customer_name, operation_id, agent_id):
    try:
        notif_handler = RvNotificationHandler(customer_name, operation_id, agent_id)
        oper_info = get_oper_info(operation_id)
        oper_plugin = oper_info[OperationKey.Plugin]
        oper_status = oper_info[OperationKey.OperationStatus]
        threshold = translate_opercodes_to_notif_threshold(oper_status)
        oper_type = return_notif_type_from_operation(oper_info[OperationKey.Operation])
        notif_rules = (
            notification_rule_exists(
                notif_handler, oper_plugin, oper_type, threshold
            )
        )

        if notif_rules:
            if oper_plugin == RV_PLUGIN or oper_plugin == CORE_PLUGIN:
                sender_addresses = (
                    notif_handler.get_sending_emails(notif_rules)
                )
                oper = OperationRetriever(username, customer_name, None, None)
                oper_data = oper.get_install_operation_for_email_alert(operation_id)

                if sender_addresses:
                    subject, msg_body  = (
                        parse_install_operation_data(
                            oper_data, oper_type,
                            oper_plugin, threshold
                        )
                    )

                    send_data(
                        customer_name, subject,
                        msg_body, sender_addresses
                    )

    except Exception as e:
        logger.exception(e)