diff options
author | Ansible Core Team <info@ansible.com> | 2020-03-09 09:40:34 +0000 |
---|---|---|
committer | Ansible Core Team <info@ansible.com> | 2020-03-09 09:40:34 +0000 |
commit | 44ce3f381254b913bff1c735a2829003f5c240f9 (patch) | |
tree | 4ffffd9e84c1ba29943e8a65943af8a4db45c423 /lib/ansible/modules/network/ios/ios_acl_interfaces.py | |
parent | 83c7ad1886999030ed55abb0f2201e8a08124b12 (diff) | |
download | ansible-44ce3f381254b913bff1c735a2829003f5c240f9.tar.gz |
Migrated to cisco.ios
Diffstat (limited to 'lib/ansible/modules/network/ios/ios_acl_interfaces.py')
-rw-r--r-- | lib/ansible/modules/network/ios/ios_acl_interfaces.py | 633 |
1 files changed, 0 insertions, 633 deletions
diff --git a/lib/ansible/modules/network/ios/ios_acl_interfaces.py b/lib/ansible/modules/network/ios/ios_acl_interfaces.py deleted file mode 100644 index 7286ac45a8..0000000000 --- a/lib/ansible/modules/network/ios/ios_acl_interfaces.py +++ /dev/null @@ -1,633 +0,0 @@ -#!/usr/bin/python -# -*- coding: utf-8 -*- -# Copyright 2019 Red Hat -# GNU General Public License v3.0+ -# (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt) - -############################################# -# WARNING # -############################################# -# -# This file is auto generated by the resource -# module builder playbook. -# -# Do not edit this file manually. -# -# Changes to this file will be over written -# by the resource module builder. -# -# Changes should be made in the model used to -# generate this file or in the resource module -# builder template. -# -############################################# - -""" -The module file for ios_acl_interfaces -""" - -from __future__ import absolute_import, division, print_function -__metaclass__ = type - -ANSIBLE_METADATA = {'metadata_version': '1.1', - 'status': ['preview'], - 'supported_by': 'network'} - -DOCUMENTATION = """ ---- -module: ios_acl_interfaces -version_added: '2.10' -short_description: Configure and manage access-control (ACL) attributes of interfaces on IOS devices. -description: This module configures and manages the access-control (ACL) attributes of interfaces on IOS platforms. -author: Sumit Jaiswal (@justjais) -notes: - - Tested against Cisco IOSv Version 15.2 on VIRL - - This module works with connection C(network_cli). - See L(IOS Platform Options,../network/user_guide/platform_ios.html). -options: - config: - description: A dictionary of ACL interfaces options - type: list - elements: dict - suboptions: - name: - description: Full name of the interface excluding any logical unit number, i.e. GigabitEthernet0/1. - type: str - required: True - access_groups: - description: Specify access-group for IP access list (standard or extended). - type: list - elements: dict - suboptions: - afi: - description: Specifies the AFI for the ACLs to be configured on this interface. - type: str - required: True - choices: - - ipv4 - - ipv6 - acls: - description: Specifies the ACLs for the provided AFI. - type: list - elements: dict - suboptions: - name: - description: Specifies the name of the IPv4/IPv4 ACL for the interface. - type: str - required: True - direction: - description: - - Specifies the direction of packets that the ACL will be applied on. - - With one direction already assigned, other acl direction cannot be same. - type: str - required: True - choices: - - in - - out - running_config: - description: - - The module, by default, will connect to the remote device and retrieve the current - running-config to use as a base for comparing against the contents of source. - There are times when it is not desirable to have the task get the current running-config - for every task in a playbook. The I(running_config) argument allows the implementer to - pass in the configuration to use as the base config for comparison. This value of this - option should be the output received from device by executing command. - type: str - state: - description: - - The state the configuration should be left in - type: str - choices: - - merged - - replaced - - overridden - - deleted - - gathered - - parsed - - rendered - default: merged -""" - -EXAMPLES = """ ---- - -# Using Merged - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# interface GigabitEthernet0/2 -# ip access-group 123 out - -- name: "Merge module attributes of given access-groups" - ios_acl_interfaces: - config: - - name: GigabitEthernet0/1 - access_groups: - - afi: ipv4 - acls: - - name: 110 - direction: in - - name: 123 - direction: out - - afi: ipv6 - acls: - - name: test_v6 - direction: out - - name: temp_v6 - direction: in - - name: GigabitEthernet0/2 - access_groups: - - afi: ipv4 - acls: - - name: 100 - direction: in - state: merged - -# Commands Fired: -# --------------- -# -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 100 in -# ip access-group 123 out - - -# After state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -# Using Replaced - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -- name: "Replace module attributes of given access-groups" - ios_acl_interfaces: - config: - - name: GigabitEthernet0/1 - access_groups: - - afi: ipv4 - acls: - - name: 100 - direction: out - - name: 110 - direction: in - state: replaced - -# Commands Fired: -# --------------- -# -# interface GigabitEthernet0/1 -# no ip access-group 123 out -# no ipv6 traffic-filter temp_v6 in -# no ipv6 traffic-filter test_v6 out -# ip access-group 100 out - -# After state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 100 out -# ip access-group 110 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -# Using Overridden - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -- name: "Overridden module attributes of given access-groups" - ios_acl_interfaces: - config: - - name: GigabitEthernet0/1 - access_groups: - - afi: ipv4 - acls: - - name: 100 - direction: out - - name: 110 - direction: in - state: overridden - -# Commands Fired: -# --------------- -# -# interface GigabitEthernet0/1 -# no ip access-group 123 out -# no ipv6 traffic-filter test_v6 out -# no ipv6 traffic-filter temp_v6 in -# ip access-group 100 out -# interface GigabitEthernet0/2 -# no ip access-group 110 in -# no ip access-group 123 out - -# After state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 100 out -# ip access-group 110 in -# interface GigabitEthernet0/2 - -# Using Deleted - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -- name: "Delete module attributes of given Interface" - ios_acl_interfaces: - config: - - name: GigabitEthernet0/1 - state: deleted - -# Commands Fired: -# --------------- -# -# interface GigabitEthernet0/1 -# no ip access-group 110 in -# no ip access-group 123 out -# no ipv6 traffic-filter test_v6 out -# no ipv6 traffic-filter temp_v6 in - -# After state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -- name: "Delete module attributes of given Interface based on AFI" - ios_acl_interfaces: - config: - - name: GigabitEthernet0/1 - access_groups: - - afi: ipv4 - state: deleted - -# Commands Fired: -# --------------- -# -# interface GigabitEthernet0/1 -# no ip access-group 110 in -# no ip access-group 123 out - -# After state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -# Using DELETED without any config passed -#"(NOTE: This will delete all of configured resource module attributes from each configured interface)" - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -- name: "Delete module attributes of given access-groups from ALL Interfaces" - ios_acl_interfaces: - config: - state: deleted - -# Commands Fired: -# --------------- -# -# interface GigabitEthernet0/1 -# no ip access-group 110 in -# no ip access-group 123 out -# no ipv6 traffic-filter test_v6 out -# no ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# no ip access-group 110 out -# no ip access-group 123 out - -# After state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# interface GigabitEthernet0/2 - -# Using Gathered - -# Before state: -# ------------- -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -- name: Gather listed acl interfaces with provided configurations - ios_acl_interfaces: - config: - state: gathered - -# Module Execution Result: -# ------------------------ -# -# "gathered": [ -# { -# "name": "Loopback888" -# }, -# { -# "name": "GigabitEthernet0/0" -# }, -# { -# "access_groups": [ -# { -# "acls": [ -# { -# "direction": "in", -# "name": "110" -# }, -# { -# "direction": "out", -# "name": "123" -# } -# ], -# "afi": "ipv4" -# }, -# { -# "acls": [ -# { -# "direction": "in", -# "name": "temp_v6" -# }, -# { -# "direction": "out", -# "name": "test_v6" -# } -# ], -# "afi": "ipv6" -# } -# ], -# "name": "GigabitEthernet0/1" -# }, -# { -# "access_groups": [ -# { -# "acls": [ -# { -# "direction": "in", -# "name": "100" -# }, -# { -# "direction": "out", -# "name": "123" -# } -# ], -# "afi": "ipv4" -# } -# ], -# "name": "GigabitEthernet0/2" -# } -# ] - -# After state: -# ------------ -# -# vios#sh running-config | include interface|ip access-group|ipv6 traffic-filter -# interface Loopback888 -# interface GigabitEthernet0/0 -# interface GigabitEthernet0/1 -# ip access-group 110 in -# ip access-group 123 out -# ipv6 traffic-filter test_v6 out -# ipv6 traffic-filter temp_v6 in -# interface GigabitEthernet0/2 -# ip access-group 110 in -# ip access-group 123 out - -# Using Rendered - -- name: Render the commands for provided configuration - ios_acl_interfaces: - config: - - name: GigabitEthernet0/1 - access_groups: - - afi: ipv4 - acls: - - name: 110 - direction: in - - name: 123 - direction: out - - afi: ipv6 - acls: - - name: test_v6 - direction: out - - name: temp_v6 - direction: in - state: rendered - -# Module Execution Result: -# ------------------------ -# -# "rendered": [ -# "interface GigabitEthernet0/1", -# "ip access-group 110 in", -# "ip access-group 123 out", -# "ipv6 traffic-filter temp_v6 in", -# "ipv6 traffic-filter test_v6 out" -# ] - -# Using Parsed - -- name: Parse the commands for provided configuration - ios_acl_interfaces: - running_config: - "interface GigabitEthernet0/1 - ip access-group 110 in - ip access-group 123 out - ipv6 traffic-filter temp_v6 in - ipv6 traffic-filter test_v6 out" - state: parsed - -# Module Execution Result: -# ------------------------ -# -# "parsed": [ -# { -# "access_groups": [ -# { -# "acls": [ -# { -# "direction": "in", -# "name": "110" -# } -# ], -# "afi": "ipv4" -# }, -# { -# "acls": [ -# { -# "direction": "in", -# "name": "temp_v6" -# } -# ], -# "afi": "ipv6" -# } -# ], -# "name": "GigabitEthernet0/1" -# } -# ] - -""" - -RETURN = """ -before: - description: The configuration as structured data prior to module invocation. - returned: always - type: list - sample: The configuration returned will always be in the same format of the parameters above. -after: - description: The configuration as structured data after module completion. - returned: when changed - type: list - sample: The configuration returned will always be in the same format of the parameters above. -commands: - description: The set of commands pushed to the remote device - returned: always - type: list - sample: ['interface GigabitEthernet0/1', 'ip access-group 110 in', 'ipv6 traffic-filter test_v6 out'] -""" - -from ansible.module_utils.basic import AnsibleModule -from ansible.module_utils.network.ios.argspec.acl_interfaces.acl_interfaces import Acl_InterfacesArgs -from ansible.module_utils.network.ios.config.acl_interfaces.acl_interfaces import Acl_Interfaces - - -def main(): - """ - Main entry point for module execution - :returns: the result form module invocation - """ - required_if = [('state', 'merged', ('config',)), - ('state', 'replaced', ('config',)), - ('state', 'overridden', ('config',)), - ('state', 'rendered', ('config',)), - ('state', 'parsed', ('running_config',))] - - mutually_exclusive = [('config', 'running_config')] - - module = AnsibleModule(argument_spec=Acl_InterfacesArgs.argument_spec, - required_if=required_if, - mutually_exclusive=mutually_exclusive, - supports_check_mode=True) - - result = Acl_Interfaces(module).execute_module() - module.exit_json(**result) - - -if __name__ == '__main__': - main() |