Exemplo n.º 1
0
def main():
    """
    Main function
    """

    argument_spec = dict(credential=dict(required=True,
                                         type='dict',
                                         no_log=True),
                         vfid=dict(required=False, type='int'),
                         throttle=dict(required=False, type='float'),
                         timeout=dict(required=False, type='float'),
                         v3_accounts=dict(required=True, type='list'))

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    input_params = module.params

    # Set up state variables
    fos_ip_addr = input_params['credential']['fos_ip_addr']
    fos_user_name = input_params['credential']['fos_user_name']
    fos_password = input_params['credential']['fos_password']
    https = input_params['credential']['https']
    throttle = input_params['throttle']
    timeout = input_params['timeout']
    vfid = input_params['vfid']
    v3_accounts = input_params['v3_accounts']
    result = {"changed": False}

    list_helper(module, fos_ip_addr, fos_user_name, fos_password, https, True,
                throttle, vfid, "brocade_snmp", "v3_account", v3_accounts,
                False, result, timeout)
def main():
    """
    Main function
    """

    argument_spec = dict(credential=dict(required=True,
                                         type='dict',
                                         no_log=True),
                         vfid=dict(required=False, type='int'),
                         throttle=dict(required=False, type='float'),
                         timeout=dict(required=False, type='float'),
                         switch=dict(required=True, type='dict'))

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    input_params = module.params

    # Set up state variables
    fos_ip_addr = input_params['credential']['fos_ip_addr']
    fos_user_name = input_params['credential']['fos_user_name']
    fos_password = input_params['credential']['fos_password']
    https = input_params['credential']['https']
    ssh_hostkeymust = True
    if 'ssh_hostkeymust' in input_params['credential']:
        ssh_hostkeymust = input_params['credential']['ssh_hostkeymust']
    throttle = input_params['throttle']
    timeout = input_params['timeout']
    vfid = input_params['vfid']
    switch = input_params['switch']
    result = {"changed": False}

    list_helper(module, fos_ip_addr, fos_user_name, fos_password, https,
                ssh_hostkeymust, throttle, vfid, "brocade_fibrechannel_switch",
                "fibrechannel_switch", [switch], False, result, timeout)
def main():
    """
    Main function
    """

    argument_spec = dict(credential=dict(required=True,
                                         type='dict',
                                         no_log=True),
                         vfid=dict(required=False, type='int'),
                         throttle=dict(required=False, type='float'),
                         timeout=dict(required=False, type='float'),
                         user_configs=dict(required=False, type='list'),
                         delete_user_configs=dict(required=False, type='list'))

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    input_params = module.params

    # Set up state variables
    fos_ip_addr = input_params['credential']['fos_ip_addr']
    fos_user_name = input_params['credential']['fos_user_name']
    fos_password = input_params['credential']['fos_password']
    https = input_params['credential']['https']
    ssh_hostkeymust = True
    if 'ssh_hostkeymust' in input_params['credential']:
        ssh_hostkeymust = input_params['credential']['ssh_hostkeymust']
    throttle = input_params['throttle']
    timeout = input_params['timeout']
    vfid = input_params['vfid']
    user_configs = input_params['user_configs']
    delete_user_configs = input_params['delete_user_configs']
    result = {"changed": False}

    # if delete user config is not None, then we make sure
    # the user config is not present.
    # user config creation or update does not happen at the same
    # time
    if delete_user_configs != None:
        return list_delete_helper(module, fos_ip_addr, fos_user_name,
                                  fos_password, https, ssh_hostkeymust,
                                  throttle, vfid, "brocade_security",
                                  "user_config", delete_user_configs, True,
                                  result, timeout)

    list_helper(module, fos_ip_addr, fos_user_name, fos_password, https,
                ssh_hostkeymust, throttle, vfid, "brocade_security",
                "user_config", user_configs, False, result, timeout)
Exemplo n.º 4
0
def main():
    """
    Main function
    """

    argument_spec = dict(credential=dict(required=True,
                                         type='dict',
                                         no_log=True),
                         vfid=dict(required=False, type='int'),
                         throttle=dict(required=False, type='float'),
                         timeout=dict(required=False, type='float'),
                         module_name=dict(required=True, type='str'),
                         list_name=dict(required=True, type='str'),
                         all_entries=dict(required=False, type='bool'),
                         entries=dict(required=True, type='list'))

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    input_params = module.params

    # Set up state variables
    fos_ip_addr = input_params['credential']['fos_ip_addr']
    fos_user_name = input_params['credential']['fos_user_name']
    fos_password = input_params['credential']['fos_password']
    https = input_params['credential']['https']
    ssh_hostkeymust = True
    if 'ssh_hostkeymust' in input_params['credential']:
        ssh_hostkeymust = input_params['credential']['ssh_hostkeymust']
    throttle = input_params['throttle']
    timeout = input_params['timeout']
    vfid = input_params['vfid']
    module_name = str_to_human(input_params['module_name'])
    list_name = str_to_human(input_params['list_name'])
    entries = input_params['entries']
    all_entries = input_params['all_entries']
    result = {"changed": False}

    list_helper(module, fos_ip_addr, fos_user_name, fos_password, https,
                ssh_hostkeymust, throttle, vfid, module_name, list_name,
                entries, all_entries, result, timeout)
def main():
    """
    Main function
    """

    argument_spec = dict(credential=dict(required=True,
                                         type='dict',
                                         no_log=True),
                         vfid=dict(required=False, type='int'),
                         throttle=dict(required=False, type='float'),
                         timeout=dict(required=False, type='float'),
                         syslog_servers=dict(required=True, type='list'),
                         all_entries=dict(required=False, type='bool'))

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    input_params = module.params

    # Set up state variables
    fos_ip_addr = input_params['credential']['fos_ip_addr']
    fos_user_name = input_params['credential']['fos_user_name']
    fos_password = input_params['credential']['fos_password']
    https = input_params['credential']['https']
    throttle = input_params['throttle']
    timeout = input_params['timeout']
    vfid = input_params['vfid']
    syslog_servers = input_params['syslog_servers']
    result = {"changed": False}
    all_entries = input_params['all_entries']

    if all_entries == None:
        all_entries = False

    list_helper(module, fos_ip_addr, fos_user_name, fos_password, https, True,
                throttle, vfid, "brocade_logging", "syslog_server",
                syslog_servers, all_entries, result, timeout)
Exemplo n.º 6
0
def main():
    """
    Main function
    """

    argument_spec = dict(credential=dict(required=True,
                                         type='dict',
                                         no_log=True),
                         vfid=dict(required=False, type='int'),
                         throttle=dict(required=False, type='float'),
                         timeout=dict(required=False, type='float'),
                         ipfilter_policies=dict(required=False, type='list'),
                         active_policy=dict(required=False, type='str'),
                         delete_policies=dict(required=False, type='list'))

    module = AnsibleModule(argument_spec=argument_spec,
                           supports_check_mode=True)

    input_params = module.params

    # Set up state variables
    fos_ip_addr = input_params['credential']['fos_ip_addr']
    fos_user_name = input_params['credential']['fos_user_name']
    fos_password = input_params['credential']['fos_password']
    https = input_params['credential']['https']
    throttle = input_params['throttle']
    timeout = input_params['timeout']
    vfid = input_params['vfid']
    ipfilter_policies = input_params['ipfilter_policies']
    active_policy = input_params['active_policy']
    delete_policies = input_params['delete_policies']
    result = {"changed": False}

    # if delete policy is not None, then we make sure
    # the policy is not present.
    # policy creation or update does not happen at the same
    # time
    if delete_policies != None:
        return list_delete_helper(module, fos_ip_addr, fos_user_name,
                                  fos_password, https, True, throttle, vfid,
                                  "brocade_security", "ipfilter_policy",
                                  delete_policies, True, result, timeout)

    # if I am dealing with active_policy set, it must be policy list update
    if active_policy == None:
        return list_helper(module, fos_ip_addr, fos_user_name, fos_password,
                           https, True, throttle, vfid, "brocade_security",
                           "ipfilter_policy", ipfilter_policies, False, result,
                           timeout)

    if not is_full_human(ipfilter_policies, result):
        module.exit_json(**result)

    if vfid is None:
        vfid = 128

    ret_code, auth, fos_version = login(fos_ip_addr, fos_user_name,
                                        fos_password, https, throttle, result,
                                        timeout)
    if ret_code != 0:
        module.exit_json(**result)

    ret_code, response = ipfilter_policy_get(fos_ip_addr, https, auth, vfid,
                                             result, timeout)
    if ret_code != 0:
        exit_after_login(fos_ip_addr, https, auth, result, module, timeout)

    resp_ir = response["Response"]["ipfilter-policy"]

    if isinstance(resp_ir, list):
        c_policies = resp_ir
    else:
        c_policies = [resp_ir]

    # convert REST to human readable format first
    for c_policy in c_policies:
        to_human_ipfilter_policy(c_policy)

    # if active policy is not None, then we make sure
    # the policy is active or activate. and return
    # policy creation or update does not happen at the same
    # time
    if active_policy != None:
        found_disabled_policy = False
        found_active_policy = False
        activate_list = []
        for c_policy in c_policies:
            if c_policy["name"] == active_policy:
                if c_policy["is_policy_active"] == False:
                    found_disabled_policy = True
                    activate_dict = {
                        "name": c_policy["name"],
                        "action": "activate"
                    }
                    activate_list.append(activate_dict)
                else:
                    found_active_policy = True
                    activate_dict = {
                        "name": c_policy["name"],
                    }
                    activate_list.append(activate_dict)

        if found_disabled_policy:
            if not module.check_mode:
                ret_code = ipfilter_policy_patch(fos_ip_addr, https, auth,
                                                 vfid, result, activate_list,
                                                 timeout)
                if ret_code != 0:
                    exit_after_login(fos_ip_addr, https, auth, result, module,
                                     timeout)

            result["changed"] = True
        elif found_active_policy:
            result["same active policy"] = activate_list
        else:
            result["failed"] = True
            result["msg"] = "could not find matching policy"

        logout(fos_ip_addr, https, auth, result, timeout)
        module.exit_json(**result)