cisco_node_utils 1.3.0 → 1.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/CHANGELOG.md +66 -0
- data/Gemfile +1 -0
- data/README.md +44 -43
- data/bin/.rubocop.yml +18 -0
- data/bin/show_running_yang.rb +233 -0
- data/cisco_node_utils.gemspec +1 -1
- data/docs/README-maintainers.md +1 -0
- data/docs/README-utilities.md +14 -0
- data/lib/.rubocop.yml +1 -1
- data/lib/cisco_node_utils/aaa_authentication_login_service.rb +8 -3
- data/lib/cisco_node_utils/aaa_authorization_service.rb +6 -0
- data/lib/cisco_node_utils/bfd_global.rb +300 -0
- data/lib/cisco_node_utils/bgp.rb +6 -4
- data/lib/cisco_node_utils/bgp_af.rb +2 -0
- data/lib/cisco_node_utils/bgp_neighbor.rb +14 -0
- data/lib/cisco_node_utils/bgp_neighbor_af.rb +4 -1
- data/lib/cisco_node_utils/cisco_cmn_utils.rb +126 -0
- data/lib/cisco_node_utils/client/client.rb +6 -2
- data/lib/cisco_node_utils/client/grpc/client.rb +120 -36
- data/lib/cisco_node_utils/client/nxapi/client.rb +6 -2
- data/lib/cisco_node_utils/cmd_ref/DEPRECATED.yaml +118 -0
- data/lib/cisco_node_utils/cmd_ref/aaa_authorization_service.yaml +14 -0
- data/lib/cisco_node_utils/cmd_ref/bfd_global.yaml +117 -0
- data/lib/cisco_node_utils/cmd_ref/bgp.yaml +7 -7
- data/lib/cisco_node_utils/cmd_ref/bgp_neighbor.yaml +7 -0
- data/lib/cisco_node_utils/cmd_ref/dhcp_relay_global.yaml +125 -0
- data/lib/cisco_node_utils/cmd_ref/feature.yaml +10 -0
- data/lib/cisco_node_utils/cmd_ref/interface.yaml +141 -49
- data/lib/cisco_node_utils/cmd_ref/interface_ospf.yaml +44 -0
- data/lib/cisco_node_utils/cmd_ref/interface_portchannel.yaml +6 -0
- data/lib/cisco_node_utils/cmd_ref/ospf.yaml +6 -0
- data/lib/cisco_node_utils/cmd_ref/ospf_area.yaml +91 -0
- data/lib/cisco_node_utils/cmd_ref/ospf_area_vlink.yaml +88 -0
- data/lib/cisco_node_utils/cmd_ref/overlay_global.yaml +0 -3
- data/lib/cisco_node_utils/cmd_ref/show_version.yaml +3 -3
- data/lib/cisco_node_utils/cmd_ref/snmp_community.yaml +39 -15
- data/lib/cisco_node_utils/cmd_ref/snmp_notification_receiver.yaml +43 -21
- data/lib/cisco_node_utils/cmd_ref/snmp_server.yaml +48 -19
- data/lib/cisco_node_utils/cmd_ref/snmp_user.yaml +0 -0
- data/lib/cisco_node_utils/cmd_ref/tacacs_global.yaml +30 -0
- data/lib/cisco_node_utils/cmd_ref/tacacs_server.yaml +18 -6
- data/lib/cisco_node_utils/cmd_ref/vdc.yaml +4 -0
- data/lib/cisco_node_utils/cmd_ref/virtual_service.yaml +1 -0
- data/lib/cisco_node_utils/cmd_ref/vlan.yaml +23 -10
- data/lib/cisco_node_utils/cmd_ref/vxlan_vtep.yaml +8 -2
- data/lib/cisco_node_utils/cmd_ref/yang.yaml +7 -0
- data/lib/cisco_node_utils/cmd_ref/yum.yaml +10 -1
- data/lib/cisco_node_utils/constants.rb +8 -1
- data/lib/cisco_node_utils/dhcp_relay_global.rb +302 -0
- data/lib/cisco_node_utils/exceptions.rb +29 -0
- data/lib/cisco_node_utils/feature.rb +28 -0
- data/lib/cisco_node_utils/interface.rb +493 -402
- data/lib/cisco_node_utils/interface_DEPRECATED.rb +513 -0
- data/lib/cisco_node_utils/interface_ospf.rb +126 -0
- data/lib/cisco_node_utils/interface_portchannel.rb +16 -0
- data/lib/cisco_node_utils/logger.rb +3 -0
- data/lib/cisco_node_utils/node.rb +29 -1
- data/lib/cisco_node_utils/overlay_global.rb +1 -12
- data/lib/cisco_node_utils/pim.rb +1 -0
- data/lib/cisco_node_utils/pim_group_list.rb +1 -0
- data/lib/cisco_node_utils/pim_rp_address.rb +1 -0
- data/lib/cisco_node_utils/platform.rb +9 -2
- data/lib/cisco_node_utils/router_ospf.rb +1 -1
- data/lib/cisco_node_utils/router_ospf_area.rb +416 -0
- data/lib/cisco_node_utils/router_ospf_area_vlink.rb +313 -0
- data/lib/cisco_node_utils/router_ospf_vrf.rb +17 -0
- data/lib/cisco_node_utils/snmp_notification_receiver.rb +27 -9
- data/lib/cisco_node_utils/snmpcommunity.rb +34 -8
- data/lib/cisco_node_utils/snmpserver.rb +4 -4
- data/lib/cisco_node_utils/snmpuser.rb +0 -0
- data/lib/cisco_node_utils/tacacs_global.rb +102 -0
- data/lib/cisco_node_utils/tacacs_server.rb +8 -7
- data/lib/cisco_node_utils/vdc.rb +25 -7
- data/lib/cisco_node_utils/version.rb +1 -1
- data/lib/cisco_node_utils/vlan.rb +30 -56
- data/lib/cisco_node_utils/vlan_DEPRECATED.rb +108 -0
- data/lib/cisco_node_utils/yang.rb +160 -0
- data/lib/cisco_node_utils/yum.rb +25 -32
- data/tests/.rubocop.yml +3 -0
- data/tests/ciscotest.rb +136 -19
- data/tests/cmd_config_invalid.yaml +1 -1
- data/tests/noop.rb +7 -0
- data/tests/tacacs_server.yaml.example +6 -0
- data/tests/test_aaa_authentication_login.rb +24 -1
- data/tests/test_aaa_authentication_login_service.rb +9 -16
- data/tests/test_aaa_authorization_service.rb +111 -84
- data/tests/test_bfd_global.rb +278 -0
- data/tests/test_bgp_neighbor.rb +20 -0
- data/tests/test_bridge_domain_vni.rb +2 -9
- data/tests/test_cmn_utils.rb +76 -0
- data/tests/test_dhcp_relay_global.rb +284 -0
- data/tests/test_dns_domain.rb +4 -4
- data/tests/test_domain_name.rb +2 -2
- data/tests/test_encapsulation.rb +2 -4
- data/tests/test_evpn_vni.rb +14 -7
- data/tests/test_fabricpath_global.rb +12 -13
- data/tests/test_feature.rb +35 -17
- data/tests/test_interface.rb +352 -127
- data/tests/test_interface_bdi.rb +2 -2
- data/tests/test_interface_channel_group.rb +1 -1
- data/tests/test_interface_ospf.rb +153 -23
- data/tests/test_interface_portchannel.rb +15 -6
- data/tests/test_interface_private_vlan.rb +200 -576
- data/tests/test_interface_svi.rb +5 -52
- data/tests/test_interface_switchport.rb +80 -240
- data/tests/test_itd_device_group.rb +2 -2
- data/tests/test_itd_device_group_node.rb +2 -2
- data/tests/test_itd_service.rb +1 -1
- data/tests/test_name_server.rb +3 -3
- data/tests/test_node_ext.rb +15 -17
- data/tests/test_ntp_config.rb +1 -1
- data/tests/test_ntp_server.rb +3 -3
- data/tests/test_nxapi.rb +1 -0
- data/tests/test_overlay_global.rb +15 -19
- data/tests/test_pim.rb +5 -5
- data/tests/test_pim_group_list.rb +1 -37
- data/tests/test_pim_rp_address.rb +1 -1
- data/tests/test_platform.rb +9 -11
- data/tests/test_portchannel_global.rb +43 -3
- data/tests/test_radius_server.rb +1 -1
- data/tests/test_radius_server_group.rb +1 -1
- data/tests/test_router_bgp.rb +17 -30
- data/tests/test_router_ospf_area.rb +433 -0
- data/tests/test_router_ospf_area_vlink.rb +298 -0
- data/tests/test_router_ospf_vrf.rb +17 -0
- data/tests/test_snmp_notification_receiver.rb +11 -11
- data/tests/test_snmpcommunity.rb +177 -69
- data/tests/test_snmpgroup.rb +7 -7
- data/tests/test_snmpserver.rb +164 -253
- data/tests/test_snmpuser.rb +73 -69
- data/tests/test_stp_global.rb +15 -15
- data/tests/test_syslog_settings.rb +1 -1
- data/tests/test_tacacs_global.rb +80 -0
- data/tests/test_tacacs_server.rb +129 -51
- data/tests/test_tacacs_server_group.rb +3 -29
- data/tests/test_tacacs_server_host.rb +24 -27
- data/tests/test_vlan.rb +57 -59
- data/tests/test_vlan_private.rb +271 -284
- data/tests/test_vpc.rb +10 -4
- data/tests/test_vrf.rb +2 -0
- data/tests/test_vrf_af.rb +2 -5
- data/tests/test_vtp.rb +5 -2
- data/tests/test_vxlan_vtep.rb +20 -44
- data/tests/test_vxlan_vtep_vni.rb +23 -16
- data/tests/test_yang.rb +369 -0
- data/tests/test_yum.rb +34 -42
- data/tests/yum_package.yaml +35 -0
- metadata +31 -4
- data/tests/test_vlan_mt_full.rb +0 -85
|
@@ -19,6 +19,20 @@ method:
|
|
|
19
19
|
set_value: "%s aaa authorization %s %s local"
|
|
20
20
|
default_value: :local
|
|
21
21
|
|
|
22
|
+
remove_local_auth:
|
|
23
|
+
# Used for determining if removal of authentication method
|
|
24
|
+
# 'local' is permitted.
|
|
25
|
+
# TBD: remove local should be allowed on all platforms.
|
|
26
|
+
# Change once CSCva88188 is resolved
|
|
27
|
+
kind: boolean
|
|
28
|
+
N3k: &remove_local_allowed
|
|
29
|
+
default_only: true
|
|
30
|
+
N9k: *remove_local_allowed
|
|
31
|
+
N8k: *remove_local_allowed
|
|
32
|
+
N5k: *remove_local_allowed
|
|
33
|
+
N6k: *remove_local_allowed
|
|
34
|
+
N7k: *remove_local_allowed
|
|
35
|
+
|
|
22
36
|
services:
|
|
23
37
|
get_command: "show run aaa all"
|
|
24
38
|
get_value: '/^aaa authorization (\S+) (\S+) .*(?:local)? ?$/'
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
# bfd_global
|
|
2
|
+
---
|
|
3
|
+
_exclude: [ios_xr]
|
|
4
|
+
|
|
5
|
+
_template:
|
|
6
|
+
get_command: "show running-config bfd all"
|
|
7
|
+
context: ~
|
|
8
|
+
|
|
9
|
+
echo_interface:
|
|
10
|
+
kind: string
|
|
11
|
+
get_value: '/^bfd echo-interface (.*)$/'
|
|
12
|
+
set_value: '<state> bfd echo-interface <intf>'
|
|
13
|
+
default_value: false
|
|
14
|
+
|
|
15
|
+
echo_rx_interval:
|
|
16
|
+
_exclude: [N5k, N6k]
|
|
17
|
+
kind: int
|
|
18
|
+
get_value: '/^bfd echo-rx-interval (\d+)$/'
|
|
19
|
+
set_value: '<state> bfd echo-rx-interval <rxi>'
|
|
20
|
+
N3k:
|
|
21
|
+
default_value: 250
|
|
22
|
+
else:
|
|
23
|
+
default_value: 50
|
|
24
|
+
|
|
25
|
+
fabricpath_interval:
|
|
26
|
+
_exclude: [N3k, N8k, N9k]
|
|
27
|
+
get_value: '/^bfd fabricpath interval (\d+) min_rx (\d+) multiplier (\d+)$/'
|
|
28
|
+
set_value: '<state> bfd fabricpath interval <interval> min_rx <min_rx> multiplier <multiplier>'
|
|
29
|
+
default_value: ['50', '50', '3']
|
|
30
|
+
|
|
31
|
+
fabricpath_slow_timer:
|
|
32
|
+
_exclude: [N3k, N8k, N9k]
|
|
33
|
+
kind: int
|
|
34
|
+
get_value: '/^bfd fabricpath slow-timer (\d+)$/'
|
|
35
|
+
set_value: '<state> bfd fabricpath slow-timer <timer>'
|
|
36
|
+
default_value: 2000
|
|
37
|
+
|
|
38
|
+
fabricpath_vlan:
|
|
39
|
+
_exclude: [N3k, N8k, N9k]
|
|
40
|
+
kind: int
|
|
41
|
+
get_value: '/^bfd fabricpath vlan (\d+)$/'
|
|
42
|
+
set_value: '<state> bfd fabricpath vlan <vlan>'
|
|
43
|
+
default_value: 1
|
|
44
|
+
|
|
45
|
+
interval:
|
|
46
|
+
_exclude: [N8k, N9k] # TBD: bug on n8k, n9k this is not working now
|
|
47
|
+
get_value: '/^bfd interval (\d+) min_rx (\d+) multiplier (\d+)$/'
|
|
48
|
+
set_value: '<state> bfd interval <interval> min_rx <min_rx> multiplier <multiplier>'
|
|
49
|
+
N3k:
|
|
50
|
+
default_value: ['250', '250', '3']
|
|
51
|
+
else:
|
|
52
|
+
default_value: ['50', '50', '3']
|
|
53
|
+
|
|
54
|
+
ipv4_echo_rx_interval:
|
|
55
|
+
_exclude: [N5k, N6k]
|
|
56
|
+
kind: int
|
|
57
|
+
get_value: '/^bfd ipv4 echo-rx-interval (\d+)$/'
|
|
58
|
+
set_value: '<state> bfd ipv4 echo-rx-interval <rxi>'
|
|
59
|
+
N3k:
|
|
60
|
+
default_value: 250
|
|
61
|
+
else:
|
|
62
|
+
default_value: 50
|
|
63
|
+
|
|
64
|
+
ipv4_interval:
|
|
65
|
+
_exclude: [N5k, N6k]
|
|
66
|
+
get_value: '/^bfd ipv4 interval (\d+) min_rx (\d+) multiplier (\d+)$/'
|
|
67
|
+
set_value: '<state> bfd ipv4 interval <interval> min_rx <min_rx> multiplier <multiplier>'
|
|
68
|
+
N3k:
|
|
69
|
+
default_value: ['250', '250', '3']
|
|
70
|
+
else:
|
|
71
|
+
default_value: ['50', '50', '3']
|
|
72
|
+
|
|
73
|
+
ipv4_slow_timer:
|
|
74
|
+
_exclude: [N5k, N6k]
|
|
75
|
+
kind: int
|
|
76
|
+
get_value: '/^bfd ipv4 slow-timer (\d+)$/'
|
|
77
|
+
set_value: '<state> bfd ipv4 slow-timer <timer>'
|
|
78
|
+
default_value: 2000
|
|
79
|
+
|
|
80
|
+
ipv6_echo_rx_interval:
|
|
81
|
+
_exclude: [N5k, N6k]
|
|
82
|
+
kind: int
|
|
83
|
+
get_value: '/^bfd ipv6 echo-rx-interval (\d+)$/'
|
|
84
|
+
set_value: '<state> bfd ipv6 echo-rx-interval <rxi>'
|
|
85
|
+
N3k:
|
|
86
|
+
default_value: 250
|
|
87
|
+
else:
|
|
88
|
+
default_value: 50
|
|
89
|
+
|
|
90
|
+
ipv6_interval:
|
|
91
|
+
_exclude: [N5k, N6k]
|
|
92
|
+
get_value: '/^bfd ipv6 interval (\d+) min_rx (\d+) multiplier (\d+)$/'
|
|
93
|
+
set_value: '<state> bfd ipv6 interval <interval> min_rx <min_rx> multiplier <multiplier>'
|
|
94
|
+
N3k:
|
|
95
|
+
default_value: ['250', '250', '3']
|
|
96
|
+
else:
|
|
97
|
+
default_value: ['50', '50', '3']
|
|
98
|
+
|
|
99
|
+
ipv6_slow_timer:
|
|
100
|
+
_exclude: [N5k, N6k]
|
|
101
|
+
kind: int
|
|
102
|
+
get_value: '/^bfd ipv6 slow-timer (\d+)$/'
|
|
103
|
+
set_value: '<state> bfd ipv6 slow-timer <timer>'
|
|
104
|
+
default_value: 2000
|
|
105
|
+
|
|
106
|
+
slow_timer:
|
|
107
|
+
kind: int
|
|
108
|
+
get_value: '/^bfd slow-timer (\d+)$/'
|
|
109
|
+
set_value: '<state> bfd slow-timer <timer>'
|
|
110
|
+
default_value: 2000
|
|
111
|
+
|
|
112
|
+
startup_timer:
|
|
113
|
+
_exclude: [N5k, N6k, N7k]
|
|
114
|
+
kind: int
|
|
115
|
+
get_value: '/^bfd startup-timer (\d+)$/'
|
|
116
|
+
set_value: '<state> bfd startup-timer <timer>'
|
|
117
|
+
default_value: 5
|
|
@@ -272,7 +272,7 @@ nsr:
|
|
|
272
272
|
set_value: '<state> nsr'
|
|
273
273
|
|
|
274
274
|
process_initialized:
|
|
275
|
-
_exclude: [ios_xr, N3k, N7k,
|
|
275
|
+
_exclude: [ios_xr, N3k, N7k, N9k]
|
|
276
276
|
# bgp process initialization state
|
|
277
277
|
kind: boolean
|
|
278
278
|
context: ~
|
|
@@ -331,12 +331,12 @@ shutdown:
|
|
|
331
331
|
default_value: false
|
|
332
332
|
|
|
333
333
|
suppress_fib_pending:
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
334
|
+
_exclude: [ios_xr]
|
|
335
|
+
kind: boolean
|
|
336
|
+
get_value: '/^(?:no )?suppress-fib-pending$/'
|
|
337
|
+
set_value: '<state> suppress-fib-pending'
|
|
338
|
+
default_value: true
|
|
339
|
+
auto_default: false
|
|
340
340
|
|
|
341
341
|
timer_bestpath_limit:
|
|
342
342
|
# Note: Does not exist in IOS XR
|
|
@@ -20,6 +20,13 @@ all_neighbors:
|
|
|
20
20
|
- "(?)vrf <vrf>"
|
|
21
21
|
get_value: '/^neighbor (\S+)$/'
|
|
22
22
|
|
|
23
|
+
bfd:
|
|
24
|
+
_exclude: [ios_xr]
|
|
25
|
+
kind: boolean
|
|
26
|
+
get_value: '/^bfd$/'
|
|
27
|
+
set_value: '<state> bfd'
|
|
28
|
+
default_value: false
|
|
29
|
+
|
|
23
30
|
capability_negotiation:
|
|
24
31
|
_exclude: [ios_xr]
|
|
25
32
|
auto_default: false
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# dhcp_relay_global
|
|
2
|
+
---
|
|
3
|
+
_exclude: [ios_xr]
|
|
4
|
+
|
|
5
|
+
_template:
|
|
6
|
+
get_command: "show running-config dhcp | no-more"
|
|
7
|
+
|
|
8
|
+
ipv4_information_option:
|
|
9
|
+
kind: boolean
|
|
10
|
+
get_value: '/^ip dhcp relay information option$/'
|
|
11
|
+
set_value: "<state> ip dhcp relay information option"
|
|
12
|
+
default_value: false
|
|
13
|
+
|
|
14
|
+
ipv4_information_option_trust:
|
|
15
|
+
_exclude: [N5k, N6k]
|
|
16
|
+
kind: boolean
|
|
17
|
+
get_value: '/^ip dhcp relay information option trust$/'
|
|
18
|
+
set_value: "<state> ip dhcp relay information option trust"
|
|
19
|
+
default_value: false
|
|
20
|
+
|
|
21
|
+
ipv4_information_option_vpn:
|
|
22
|
+
kind: boolean
|
|
23
|
+
get_value: '/^ip dhcp relay information option vpn$/'
|
|
24
|
+
set_value: "<state> ip dhcp relay information option vpn"
|
|
25
|
+
default_value: false
|
|
26
|
+
|
|
27
|
+
ipv4_information_trust_all:
|
|
28
|
+
_exclude: [N5k, N6k]
|
|
29
|
+
kind: boolean
|
|
30
|
+
get_value: '/^ip dhcp relay information trust-all$/'
|
|
31
|
+
set_value: "<state> ip dhcp relay information trust-all"
|
|
32
|
+
default_value: false
|
|
33
|
+
|
|
34
|
+
ipv4_relay:
|
|
35
|
+
kind: boolean
|
|
36
|
+
get_value: '/^ip dhcp relay$/'
|
|
37
|
+
set_value: "<state> ip dhcp relay"
|
|
38
|
+
N3k: &relay_default_true
|
|
39
|
+
# auto_default is set to false because when
|
|
40
|
+
# this property is set to false, we do not
|
|
41
|
+
# find the regex pattern and since the default_value
|
|
42
|
+
# is true, it should not return true as its real
|
|
43
|
+
# value is false.
|
|
44
|
+
auto_default: false
|
|
45
|
+
default_value: true
|
|
46
|
+
N5k: &relay_default_false
|
|
47
|
+
default_value: false
|
|
48
|
+
N6k: *relay_default_false
|
|
49
|
+
N7k: *relay_default_true
|
|
50
|
+
N8k: *relay_default_true
|
|
51
|
+
N9k: *relay_default_true
|
|
52
|
+
|
|
53
|
+
ipv4_smart_relay:
|
|
54
|
+
kind: boolean
|
|
55
|
+
get_value: '/^ip dhcp smart-relay global$/'
|
|
56
|
+
set_value: "<state> ip dhcp smart-relay global"
|
|
57
|
+
default_value: false
|
|
58
|
+
|
|
59
|
+
ipv4_src_addr_hsrp:
|
|
60
|
+
_exclude: [N3k, N8k, N9k]
|
|
61
|
+
kind: boolean
|
|
62
|
+
get_value: '/^ip dhcp relay source-address hsrp$/'
|
|
63
|
+
set_value: "<state> ip dhcp relay source-address hsrp"
|
|
64
|
+
default_value: false
|
|
65
|
+
|
|
66
|
+
ipv4_src_intf:
|
|
67
|
+
get_value: '/^ip dhcp relay source-interface (.*)$/'
|
|
68
|
+
set_value: "<state> ip dhcp relay source-interface <intf>"
|
|
69
|
+
default_value: false
|
|
70
|
+
|
|
71
|
+
ipv4_sub_option_circuit_id_custom:
|
|
72
|
+
_exclude: [N7k, N8k]
|
|
73
|
+
kind: boolean
|
|
74
|
+
get_value: '/^ip dhcp relay sub-option circuit-id customized$/'
|
|
75
|
+
set_value: "<state> ip dhcp relay sub-option circuit-id customized"
|
|
76
|
+
default_value: false
|
|
77
|
+
|
|
78
|
+
ipv4_sub_option_circuit_id_string:
|
|
79
|
+
_exclude: [N5k, N6k, N7k, N8k, N9k]
|
|
80
|
+
get_value: '/^ip dhcp relay sub-option circuit-id format-type string format (.*)$/'
|
|
81
|
+
set_value: "<state> ip dhcp relay sub-option circuit-id format-type string <format> <word>"
|
|
82
|
+
default_value: false
|
|
83
|
+
|
|
84
|
+
ipv4_sub_option_cisco:
|
|
85
|
+
kind: boolean
|
|
86
|
+
get_value: '/^ip dhcp relay sub-option type cisco$/'
|
|
87
|
+
set_value: "<state> ip dhcp relay sub-option type cisco"
|
|
88
|
+
default_value: false
|
|
89
|
+
|
|
90
|
+
ipv6_option_cisco:
|
|
91
|
+
_exclude: [N5k, N6k]
|
|
92
|
+
kind: boolean
|
|
93
|
+
get_value: '/^ipv6 dhcp relay option type cisco$/'
|
|
94
|
+
set_value: "<state> ipv6 dhcp relay option type cisco"
|
|
95
|
+
default_value: false
|
|
96
|
+
|
|
97
|
+
ipv6_option_vpn:
|
|
98
|
+
kind: boolean
|
|
99
|
+
get_value: '/^ipv6 dhcp relay option vpn$/'
|
|
100
|
+
set_value: "<state> ipv6 dhcp relay option vpn"
|
|
101
|
+
default_value: false
|
|
102
|
+
|
|
103
|
+
ipv6_relay:
|
|
104
|
+
kind: boolean
|
|
105
|
+
get_value: '/^ipv6 dhcp relay$/'
|
|
106
|
+
set_value: "<state> ipv6 dhcp relay"
|
|
107
|
+
N3k: &v6_relay_default_true
|
|
108
|
+
# auto_default is set to false because when
|
|
109
|
+
# this property is set to false, we do not
|
|
110
|
+
# find the regex pattern and since the default_value
|
|
111
|
+
# is true, it should not return true as its real
|
|
112
|
+
# value is false.
|
|
113
|
+
auto_default: false
|
|
114
|
+
default_value: true
|
|
115
|
+
N5k: &v6_relay_default_false
|
|
116
|
+
default_value: false
|
|
117
|
+
N6k: *v6_relay_default_false
|
|
118
|
+
N7k: *v6_relay_default_true
|
|
119
|
+
N8k: *v6_relay_default_true
|
|
120
|
+
N9k: *v6_relay_default_true
|
|
121
|
+
|
|
122
|
+
ipv6_src_intf:
|
|
123
|
+
get_value: '/^ipv6 dhcp relay source-interface (.*)$/'
|
|
124
|
+
set_value: "<state> ipv6 dhcp relay source-interface <intf>"
|
|
125
|
+
default_value: false
|
|
@@ -5,11 +5,21 @@ _exclude: [ios_xr]
|
|
|
5
5
|
_template:
|
|
6
6
|
get_command: "show running | i ^feature"
|
|
7
7
|
|
|
8
|
+
bfd:
|
|
9
|
+
kind: boolean
|
|
10
|
+
get_value: '/^feature bfd$/'
|
|
11
|
+
set_value: "feature bfd"
|
|
12
|
+
|
|
8
13
|
bgp:
|
|
9
14
|
kind: boolean
|
|
10
15
|
get_value: '/^feature bgp$/'
|
|
11
16
|
set_value: "feature bgp"
|
|
12
17
|
|
|
18
|
+
dhcp:
|
|
19
|
+
kind: boolean
|
|
20
|
+
get_value: '/^feature dhcp$/'
|
|
21
|
+
set_value: "feature dhcp"
|
|
22
|
+
|
|
13
23
|
fabric:
|
|
14
24
|
_exclude: [N3k, N8k, N9k]
|
|
15
25
|
get_command: "show feature-set"
|
|
@@ -21,6 +21,13 @@ all_interfaces:
|
|
|
21
21
|
get_context: ~
|
|
22
22
|
get_value: '/^interface (.*)/'
|
|
23
23
|
|
|
24
|
+
bfd_echo:
|
|
25
|
+
_exclude: [ios_xr]
|
|
26
|
+
kind: boolean
|
|
27
|
+
get_value: '/^(?:no )?bfd echo$/'
|
|
28
|
+
set_value: '<state> bfd echo'
|
|
29
|
+
default_value: true
|
|
30
|
+
|
|
24
31
|
capabilities:
|
|
25
32
|
_exclude: [ios_xr]
|
|
26
33
|
multiple:
|
|
@@ -125,6 +132,47 @@ ipv4_arp_timeout:
|
|
|
125
132
|
ipv4_arp_timeout_non_vlan_interfaces:
|
|
126
133
|
default_only: ~
|
|
127
134
|
|
|
135
|
+
ipv4_dhcp_relay_addr:
|
|
136
|
+
_exclude: [ios_xr]
|
|
137
|
+
multiple:
|
|
138
|
+
get_value: '/^ip dhcp relay address (.*) $/'
|
|
139
|
+
set_value: "<state> ip dhcp relay address <addr>"
|
|
140
|
+
default_value: []
|
|
141
|
+
|
|
142
|
+
ipv4_dhcp_relay_info_trust:
|
|
143
|
+
_exclude: [ios_xr, N5k, N6k]
|
|
144
|
+
kind: boolean
|
|
145
|
+
get_value: '/^ip dhcp relay information trusted$/'
|
|
146
|
+
set_value: "<state> ip dhcp relay information trusted"
|
|
147
|
+
default_value: false
|
|
148
|
+
|
|
149
|
+
ipv4_dhcp_relay_src_addr_hsrp:
|
|
150
|
+
_exclude: [ios_xr, N3k, N8k, N9k]
|
|
151
|
+
kind: boolean
|
|
152
|
+
get_value: '/^ip dhcp relay source-address hsrp$/'
|
|
153
|
+
set_value: "<state> ip dhcp relay source-address hsrp"
|
|
154
|
+
default_value: false
|
|
155
|
+
|
|
156
|
+
ipv4_dhcp_relay_src_intf:
|
|
157
|
+
_exclude: [ios_xr]
|
|
158
|
+
get_value: '/^ip dhcp relay source-interface (.*)$/'
|
|
159
|
+
set_value: "<state> ip dhcp relay source-interface <intf>"
|
|
160
|
+
default_value: false
|
|
161
|
+
|
|
162
|
+
ipv4_dhcp_relay_subnet_broadcast:
|
|
163
|
+
_exclude: [ios_xr]
|
|
164
|
+
kind: boolean
|
|
165
|
+
get_value: '/^ip dhcp relay subnet-broadcast$/'
|
|
166
|
+
set_value: "<state> ip dhcp relay subnet-broadcast"
|
|
167
|
+
default_value: false
|
|
168
|
+
|
|
169
|
+
ipv4_dhcp_smart_relay:
|
|
170
|
+
_exclude: [ios_xr]
|
|
171
|
+
kind: boolean
|
|
172
|
+
get_value: '/^ip dhcp smart-relay$/'
|
|
173
|
+
set_value: "<state> ip dhcp smart-relay"
|
|
174
|
+
default_value: false
|
|
175
|
+
|
|
128
176
|
ipv4_forwarding:
|
|
129
177
|
_exclude: [ios_xr]
|
|
130
178
|
kind: boolean
|
|
@@ -191,6 +239,19 @@ ipv6_acl_out:
|
|
|
191
239
|
set_value: "<state> ipv6 traffic-filter <acl> out"
|
|
192
240
|
default_value: ""
|
|
193
241
|
|
|
242
|
+
ipv6_dhcp_relay_addr:
|
|
243
|
+
_exclude: [ios_xr]
|
|
244
|
+
multiple:
|
|
245
|
+
get_value: '/^ipv6 dhcp relay address (.*)$/'
|
|
246
|
+
set_value: "<state> ipv6 dhcp relay address <addr>"
|
|
247
|
+
default_value: []
|
|
248
|
+
|
|
249
|
+
ipv6_dhcp_relay_src_intf:
|
|
250
|
+
_exclude: [ios_xr]
|
|
251
|
+
get_value: '/^ipv6 dhcp relay source-interface (.*)$/'
|
|
252
|
+
set_value: "<state> ipv6 dhcp relay source-interface <intf>"
|
|
253
|
+
default_value: false
|
|
254
|
+
|
|
194
255
|
mtu_loopback:
|
|
195
256
|
kind: boolean
|
|
196
257
|
default_only: ~
|
|
@@ -223,15 +284,20 @@ negotiate_auto_portchannel:
|
|
|
223
284
|
set_value: "<state> negotiate auto"
|
|
224
285
|
default_value: true
|
|
225
286
|
|
|
226
|
-
|
|
287
|
+
pvlan_any:
|
|
227
288
|
multiple:
|
|
228
289
|
get_value: '/switchport private-vlan/'
|
|
229
290
|
|
|
230
|
-
|
|
291
|
+
# Be aware of similar vlan-mapping tags:
|
|
292
|
+
# 'vlan_mapping' is the non-pvlan version of this command
|
|
293
|
+
# 'pvlan_mapping' is the SVI private-vlan command
|
|
294
|
+
# 'switchport_pvlan_mapping' is the switchport-pvlan-host command
|
|
295
|
+
# 'switchport_pvlan_mapping_trunk' is the switchport-pvlan-trunk command
|
|
296
|
+
pvlan_mapping:
|
|
297
|
+
# SVI-only property
|
|
231
298
|
_exclude: [ios_xr, N8k]
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
set_value: "<state> private-vlan mapping <vlans>"
|
|
299
|
+
get_value: '/^private-vlan mapping (.*)/'
|
|
300
|
+
set_value: "<state> private-vlan mapping <vlan>"
|
|
235
301
|
default_value: []
|
|
236
302
|
|
|
237
303
|
shutdown:
|
|
@@ -277,6 +343,27 @@ speed:
|
|
|
277
343
|
else:
|
|
278
344
|
default_value: 'auto'
|
|
279
345
|
|
|
346
|
+
storm_control_broadcast:
|
|
347
|
+
_exclude: [ios_xr, N7k]
|
|
348
|
+
kind: string
|
|
349
|
+
get_value: '/^storm-control broadcast level (.*)$/'
|
|
350
|
+
set_value: "<state> storm-control broadcast level <level>"
|
|
351
|
+
default_value: '100.00'
|
|
352
|
+
|
|
353
|
+
storm_control_multicast:
|
|
354
|
+
_exclude: [ios_xr, N7k]
|
|
355
|
+
kind: string
|
|
356
|
+
get_value: '/^storm-control multicast level (.*)$/'
|
|
357
|
+
set_value: "<state> storm-control multicast level <level>"
|
|
358
|
+
default_value: '100.00'
|
|
359
|
+
|
|
360
|
+
storm_control_unicast:
|
|
361
|
+
_exclude: [ios_xr]
|
|
362
|
+
kind: string
|
|
363
|
+
get_value: '/^storm-control unicast level (.*)$/'
|
|
364
|
+
set_value: "<state> storm-control unicast level <level>"
|
|
365
|
+
default_value: '100.00'
|
|
366
|
+
|
|
280
367
|
stp_bpdufilter:
|
|
281
368
|
kind: string
|
|
282
369
|
get_value: '/^spanning-tree bpdufilter (.*)$/'
|
|
@@ -405,75 +492,80 @@ switchport_mode_port_channel:
|
|
|
405
492
|
set_value: "<state> switchport mode <mode>"
|
|
406
493
|
default_value: ""
|
|
407
494
|
|
|
408
|
-
|
|
495
|
+
switchport_pvlan_host:
|
|
496
|
+
_exclude: [ios_xr, N8k]
|
|
497
|
+
kind: boolean
|
|
498
|
+
get_value: '/^switchport mode private-vlan host$/'
|
|
499
|
+
set_value: "<state> switchport mode private-vlan host"
|
|
500
|
+
default_value: false
|
|
501
|
+
|
|
502
|
+
switchport_pvlan_host_association:
|
|
409
503
|
_exclude: [ios_xr, N8k]
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
504
|
+
# Note this is NOT a multiple, unlike trunk association.
|
|
505
|
+
get_value: '/^switchport private-vlan host-association (\d+) (\d+)$/'
|
|
506
|
+
set_value: "<state> switchport private-vlan host-association <pri> <sec>"
|
|
507
|
+
default_value: []
|
|
413
508
|
|
|
414
|
-
|
|
509
|
+
switchport_pvlan_mapping:
|
|
415
510
|
_exclude: [ios_xr, N8k]
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
511
|
+
get_value: '/^switchport private-vlan mapping (\d+) (.*)$/'
|
|
512
|
+
set_value: "<state> switchport private-vlan mapping <primary> <vlan>"
|
|
513
|
+
default_value: []
|
|
514
|
+
|
|
515
|
+
switchport_pvlan_mapping_trunk:
|
|
516
|
+
_exclude: [ios_xr, N3k, N8k]
|
|
517
|
+
multiple:
|
|
518
|
+
get_value: '/^switchport private-vlan mapping trunk (\d+) (.*)$/'
|
|
519
|
+
set_value: "<state> switchport private-vlan mapping trunk <primary> <range>"
|
|
419
520
|
default_value: []
|
|
420
521
|
|
|
421
|
-
|
|
522
|
+
switchport_pvlan_promiscuous:
|
|
523
|
+
_exclude: [ios_xr, N8k]
|
|
524
|
+
kind: boolean
|
|
525
|
+
get_value: '/^switchport mode private-vlan promiscuous$/'
|
|
526
|
+
set_value: "<state> switchport mode private-vlan promiscuous"
|
|
527
|
+
default_value: false
|
|
528
|
+
|
|
529
|
+
switchport_pvlan_trunk_allowed_vlan:
|
|
422
530
|
_exclude: [ios_xr, N8k]
|
|
423
531
|
multiple: true
|
|
424
|
-
get_value: '/^switchport private-vlan
|
|
425
|
-
set_value: "
|
|
532
|
+
get_value: '/^switchport private-vlan trunk allowed vlan (?:add )?(\S+)$/'
|
|
533
|
+
set_value: "switchport private-vlan trunk allowed vlan <range>"
|
|
534
|
+
default_value: 'none'
|
|
535
|
+
|
|
536
|
+
switchport_pvlan_trunk_association:
|
|
537
|
+
_exclude: [ios_xr, N3k, N8k]
|
|
538
|
+
multiple:
|
|
539
|
+
get_value: '/^switchport private-vlan association trunk (\d+) (\d+)$/'
|
|
540
|
+
set_value: "<state> switchport private-vlan association trunk <pri> <sec>"
|
|
426
541
|
default_value: []
|
|
427
542
|
|
|
543
|
+
switchport_pvlan_trunk_native_vlan:
|
|
544
|
+
_exclude: [ios_xr, N8k]
|
|
545
|
+
get_value: '/^switchport private-vlan trunk native vlan (.*)$/'
|
|
546
|
+
set_value: "switchport private-vlan trunk native vlan <vlan>"
|
|
547
|
+
default_value: '1'
|
|
428
548
|
|
|
429
|
-
|
|
549
|
+
switchport_pvlan_trunk_promiscuous:
|
|
430
550
|
_exclude: [ios_xr, N3k, N8k]
|
|
431
551
|
kind: boolean
|
|
432
552
|
get_value: '/^switchport mode private-vlan trunk promiscuous$/'
|
|
433
553
|
set_value: "<state> switchport mode private-vlan trunk promiscuous"
|
|
434
554
|
default_value: false
|
|
435
555
|
|
|
436
|
-
|
|
556
|
+
switchport_pvlan_trunk_secondary:
|
|
437
557
|
_exclude: [ios_xr, N3k, N8k]
|
|
438
558
|
kind: boolean
|
|
439
559
|
get_value: '/^switchport mode private-vlan trunk secondary$/'
|
|
440
560
|
set_value: "<state> switchport mode private-vlan trunk secondary"
|
|
441
561
|
default_value: false
|
|
442
562
|
|
|
443
|
-
switchport_private_vlan_association_trunk:
|
|
444
|
-
_exclude: [ios_xr, N3k, N8k]
|
|
445
|
-
multiple: true
|
|
446
|
-
#get_value: '/^switchport private-vlan association trunk (.*) (.*)$/'
|
|
447
|
-
get_value: '/^switchport private-vlan association trunk (.*)$/'
|
|
448
|
-
set_value: "<state> switchport private-vlan association trunk <vlan_pr> <vlan>"
|
|
449
|
-
default_value: []
|
|
450
|
-
|
|
451
|
-
switchport_private_vlan_mapping_trunk:
|
|
452
|
-
_exclude: [ios_xr, N3k, N8k]
|
|
453
|
-
multiple: true
|
|
454
|
-
get_value: '/^switchport private-vlan mapping trunk (.*)$/'
|
|
455
|
-
set_value: "<state> switchport private-vlan mapping trunk <vlan_pr> <vlans>"
|
|
456
|
-
default_value: []
|
|
457
|
-
|
|
458
|
-
switchport_private_vlan_trunk_allowed_vlan:
|
|
459
|
-
_exclude: [ios_xr, N8k]
|
|
460
|
-
multiple: true
|
|
461
|
-
get_value: '/^switchport private-vlan trunk allowed vlan (.*)$/'
|
|
462
|
-
set_value: "<state> switchport private-vlan trunk allowed vlan <oper> <vlans>"
|
|
463
|
-
default_value: []
|
|
464
|
-
|
|
465
|
-
switchport_private_vlan_trunk_native_vlan:
|
|
466
|
-
_exclude: [ios_xr, N8k]
|
|
467
|
-
kind: int
|
|
468
|
-
get_value: '/^switchport private-vlan trunk native vlan (.*)$/'
|
|
469
|
-
set_value: "<state> switchport private-vlan trunk native vlan <vlan>"
|
|
470
|
-
default_value: 1
|
|
471
|
-
|
|
472
563
|
switchport_trunk_allowed_vlan:
|
|
473
564
|
_exclude: [ios_xr]
|
|
474
|
-
|
|
565
|
+
multiple: true
|
|
566
|
+
get_value: '/^switchport trunk allowed vlan (?:add )?(\S+)$/'
|
|
475
567
|
set_value: "<state> switchport trunk allowed vlan <vlan>"
|
|
476
|
-
default_value:
|
|
568
|
+
default_value: '1-4094'
|
|
477
569
|
|
|
478
570
|
switchport_trunk_native_vlan:
|
|
479
571
|
_exclude: [ios_xr]
|