def lbmonitor_identical(client, module, lbmonitor_proxy):
    log('Checking if monitor is identical')

    count = lbmonitor.count_filtered(
        client, 'monitorname:%s' % module.params['monitorname'])
    if count == 0:
        return False

    lbmonitor_list = lbmonitor.get_filtered(
        client, 'monitorname:%s' % module.params['monitorname'])
    diff_dict = lbmonitor_proxy.diff_object(lbmonitor_list[0])

    # Skipping hashed fields since the cannot be compared directly
    hashed_fields = [
        'password',
        'secondarypassword',
        'radkey',
    ]
    for key in hashed_fields:
        if key in diff_dict:
            del diff_dict[key]

    if diff_dict == {}:
        return True
    else:
        return False
예제 #2
0
    def lbmonitor_identical():
        log('Entering lbmonitor_identical')

        count = lbmonitor.count_filtered(client, 'monitorname:%s' % module.params['monitorname'])
        if count == 0:
            return False

        lbmonitor_list = lbmonitor.get_filtered(client, 'monitorname:%s' % module.params['monitorname'])
        diff_dict = lbmonitor_proxy.diff_object(lbmonitor_list[0])

        # Skipping hashed fields since the cannot be compared directly
        # TODO emulate the hash function for effective equality comparison
        hashed_fields = [
            'password',
            'secondarypassword',
            'radkey',
        ]
        for key in hashed_fields:
            if key in diff_dict:
                del diff_dict[key]

        if diff_dict == {}:
            return True
        else:
            return False
예제 #3
0
def lbmonitor_identical(client, module, lbmonitor_proxy):
    log('Checking if monitor is identical')

    count = lbmonitor.count_filtered(client, 'monitorname:%s' % module.params['monitorname'])
    if count == 0:
        return False

    lbmonitor_list = lbmonitor.get_filtered(client, 'monitorname:%s' % module.params['monitorname'])
    diff_dict = lbmonitor_proxy.diff_object(lbmonitor_list[0])

    # Skipping hashed fields since the cannot be compared directly
    hashed_fields = [
        'password',
        'secondarypassword',
        'radkey',
    ]
    for key in hashed_fields:
        if key in diff_dict:
            del diff_dict[key]

    if diff_dict == {}:
        return True
    else:
        return False
예제 #4
0
def diff_list(client, module, lbmonitor_proxy):
    monitor_list = lbmonitor.get_filtered(client, 'monitorname:%s' % module.params['monitorname'])
    return lbmonitor_proxy.diff_object(monitor_list[0])
예제 #5
0
def diff_list(client, module, lbmonitor_proxy):
    monitor_list = lbmonitor.get_filtered(client, 'monitorname:%s' % module.params['monitorname'])
    return lbmonitor_proxy.diff_object(monitor_list[0])
예제 #6
0
 def diff_list():
     return lbmonitor_proxy.diff_object(lbmonitor.get_filtered(client, 'monitorname:%s' % module.params['monitorname'])[0]),