Beispiel #1
0
def load_config(module,
                candidate,
                warnings,
                action='merge',
                commit=False,
                format='xml',
                comment=None,
                confirm=False,
                confirm_timeout=None):

    with locked_config(module):
        if isinstance(candidate, list):
            candidate = '\n'.join(candidate)

        reply = load_configuration(module,
                                   candidate,
                                   action=action,
                                   format=format)
        if isinstance(reply, list):
            warnings.extend(reply)

        validate(module)
        diff = get_diff(module)

        if diff:
            diff = str(diff).strip()
            if commit:
                commit_configuration(module,
                                     confirm=confirm,
                                     comment=comment,
                                     confirm_timeout=confirm_timeout)
            else:
                discard_changes(module)

        return diff
Beispiel #2
0
def load_config(module,
                candidate,
                action='merge',
                commit=False,
                format='xml',
                comment=None,
                confirm=False,
                confirm_timeout=None):

    with locked_config(module):
        reply = load_configuration(module,
                                   candidate,
                                   action=action,
                                   format=format)

        validate(module)
        diff = get_diff(module)

        if diff:
            diff = str(diff).strip()
            if commit:
                commit_configuration(module,
                                     confirm=confirm,
                                     comment=comment,
                                     confirm_timeout=confirm_timeout)
            else:
                discard_changes(module)

        return diff
Beispiel #3
0
def load_config(module, candidate, warnings, action='merge', format='xml'):

    if not candidate:
        return

    if isinstance(candidate, list):
        candidate = '\n'.join(candidate)

    reply = load_configuration(module, candidate, action=action, format=format)
    if isinstance(reply, list):
        warnings.extend(reply)

    validate(module)

    return get_diff(module)
Beispiel #4
0
def load_config(module, candidate, warnings, action='merge', format='xml'):

    if not candidate:
        return

    if isinstance(candidate, list):
        candidate = '\n'.join(candidate)

    reply = load_configuration(module, candidate, action=action, format=format)
    if isinstance(reply, list):
        warnings.extend(reply)

    validate(module)

    return get_diff(module)
Beispiel #5
0
def load(module, candidate, action='merge', commit=False, format='xml'):
    """Loads a configuration element into the target system
    """
    with locked_config(module):
        resp = load_configuration(module,
                                  candidate,
                                  action=action,
                                  format=format)

        validate(module)
        diff = get_diff(module)

        if diff:
            diff = str(diff).strip()
            if commit:
                commit_configuration(module)
            else:
                discard_changes(module)

        return diff