cisco_node_utils 1.2.0 → 1.3.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +2 -0
- data/.rspec +2 -0
- data/.rubocop.yml +13 -0
- data/.travis.yml +4 -1
- data/CHANGELOG.md +81 -2
- data/CONTRIBUTING.md +2 -17
- data/Gemfile +5 -0
- data/README.md +92 -47
- data/Rakefile +23 -1
- data/bin/git/hooks/hook_lib +7 -0
- data/bin/git/hooks/pre-commit/check_unstaged_changes +18 -0
- data/bin/git/hooks/pre-commit/rubocop +7 -2
- data/bin/git/hooks/pre-commit/validate-diffs +18 -4
- data/bin/git/hooks/pre-commit/validate-yaml +18 -0
- data/bin/git/update-hooks +64 -6
- data/cisco_node_utils.gemspec +9 -6
- data/docs/README-develop-best-practices.md +149 -50
- data/docs/README-develop-node-utils-APIs.md +92 -42
- data/docs/README-maintainers.md +7 -4
- data/docs/README-test-execution.md +57 -0
- data/docs/cisco_node_utils.yaml.example +30 -0
- data/docs/template-router.rb +4 -0
- data/ext/mkrf_conf.rb +63 -0
- data/lib/.rubocop.yml +2 -2
- data/lib/cisco_node_utils.rb +5 -0
- data/lib/cisco_node_utils/aaa_authentication_login.rb +5 -6
- data/lib/cisco_node_utils/aaa_authorization_service.rb +1 -1
- data/lib/cisco_node_utils/ace.rb +165 -12
- data/lib/cisco_node_utils/acl.rb +2 -1
- data/lib/cisco_node_utils/bgp.rb +184 -21
- data/lib/cisco_node_utils/bgp_af.rb +94 -249
- data/lib/cisco_node_utils/bgp_neighbor.rb +94 -14
- data/lib/cisco_node_utils/bgp_neighbor_af.rb +75 -8
- data/lib/cisco_node_utils/bridge_domain.rb +183 -0
- data/lib/cisco_node_utils/bridge_domain_vni.rb +206 -0
- data/lib/cisco_node_utils/cisco_cmn_utils.rb +85 -2
- data/lib/cisco_node_utils/client.rb +35 -0
- data/lib/cisco_node_utils/client/client.rb +234 -0
- data/lib/cisco_node_utils/client/grpc.rb +33 -0
- data/lib/cisco_node_utils/client/grpc/client.rb +311 -0
- data/lib/cisco_node_utils/client/grpc/ems.proto +148 -0
- data/lib/cisco_node_utils/client/grpc/ems.rb +111 -0
- data/lib/cisco_node_utils/client/grpc/ems_services.rb +49 -0
- data/lib/cisco_node_utils/client/nxapi.rb +31 -0
- data/lib/cisco_node_utils/client/nxapi/client.rb +305 -0
- data/lib/cisco_node_utils/client/utils.rb +164 -0
- data/lib/cisco_node_utils/cmd_ref/README_YAML.md +222 -254
- data/lib/cisco_node_utils/cmd_ref/aaa_auth_login_service.yaml +11 -8
- data/lib/cisco_node_utils/cmd_ref/aaa_authentication_login.yaml +22 -15
- data/lib/cisco_node_utils/cmd_ref/aaa_authorization_service.yaml +11 -8
- data/lib/cisco_node_utils/cmd_ref/acl.yaml +21 -16
- data/lib/cisco_node_utils/cmd_ref/bgp.yaml +239 -109
- data/lib/cisco_node_utils/cmd_ref/bgp_af.yaml +114 -55
- data/lib/cisco_node_utils/cmd_ref/bgp_neighbor.yaml +76 -52
- data/lib/cisco_node_utils/cmd_ref/bgp_neighbor_af.yaml +106 -62
- data/lib/cisco_node_utils/cmd_ref/bridge_domain.yaml +71 -0
- data/lib/cisco_node_utils/cmd_ref/bridge_domain_vni.yaml +33 -0
- data/lib/cisco_node_utils/cmd_ref/dnsclient.yaml +35 -14
- data/lib/cisco_node_utils/cmd_ref/encapsulation.yaml +25 -0
- data/lib/cisco_node_utils/cmd_ref/evpn_vni.yaml +23 -17
- data/lib/cisco_node_utils/cmd_ref/fabricpath.yaml +94 -83
- data/lib/cisco_node_utils/cmd_ref/fabricpath_topology.yaml +22 -17
- data/lib/cisco_node_utils/cmd_ref/feature.yaml +76 -26
- data/lib/cisco_node_utils/cmd_ref/images.yaml +3 -2
- data/lib/cisco_node_utils/cmd_ref/interface.yaml +381 -153
- data/lib/cisco_node_utils/cmd_ref/interface_channel_group.yaml +21 -11
- data/lib/cisco_node_utils/cmd_ref/interface_ospf.yaml +21 -21
- data/lib/cisco_node_utils/cmd_ref/interface_portchannel.yaml +30 -21
- data/lib/cisco_node_utils/cmd_ref/interface_service_vni.yaml +18 -13
- data/lib/cisco_node_utils/cmd_ref/inventory.yaml +26 -31
- data/lib/cisco_node_utils/cmd_ref/itd_device_group.yaml +83 -0
- data/lib/cisco_node_utils/cmd_ref/itd_service.yaml +119 -0
- data/lib/cisco_node_utils/cmd_ref/memory.yaml +17 -6
- data/lib/cisco_node_utils/cmd_ref/ntp_config.yaml +10 -3
- data/lib/cisco_node_utils/cmd_ref/ntp_server.yaml +17 -5
- data/lib/cisco_node_utils/cmd_ref/ospf.yaml +33 -29
- data/lib/cisco_node_utils/cmd_ref/overlay_global.yaml +12 -10
- data/lib/cisco_node_utils/cmd_ref/pim.yaml +16 -19
- data/lib/cisco_node_utils/cmd_ref/portchannel_global.yaml +40 -25
- data/lib/cisco_node_utils/cmd_ref/radius_global.yaml +17 -12
- data/lib/cisco_node_utils/cmd_ref/radius_server.yaml +71 -35
- data/lib/cisco_node_utils/cmd_ref/radius_server_group.yaml +10 -5
- data/lib/cisco_node_utils/cmd_ref/show_system.yaml +6 -2
- data/lib/cisco_node_utils/cmd_ref/show_version.yaml +47 -43
- data/lib/cisco_node_utils/cmd_ref/snmp_community.yaml +13 -11
- data/lib/cisco_node_utils/cmd_ref/snmp_group.yaml +4 -2
- data/lib/cisco_node_utils/cmd_ref/snmp_notification_receiver.yaml +23 -21
- data/lib/cisco_node_utils/cmd_ref/snmp_server.yaml +26 -22
- data/lib/cisco_node_utils/cmd_ref/snmp_user.yaml +19 -17
- data/lib/cisco_node_utils/cmd_ref/snmpnotification.yaml +18 -6
- data/lib/cisco_node_utils/cmd_ref/stp_global.yaml +234 -0
- data/lib/cisco_node_utils/cmd_ref/syslog_server.yaml +24 -9
- data/lib/cisco_node_utils/cmd_ref/syslog_settings.yaml +5 -3
- data/lib/cisco_node_utils/cmd_ref/system.yaml +4 -3
- data/lib/cisco_node_utils/cmd_ref/tacacs_server.yaml +22 -20
- data/lib/cisco_node_utils/cmd_ref/tacacs_server_group.yaml +27 -15
- data/lib/cisco_node_utils/cmd_ref/tacacs_server_host.yaml +45 -16
- data/lib/cisco_node_utils/cmd_ref/vdc.yaml +21 -11
- data/lib/cisco_node_utils/cmd_ref/virtual_service.yaml +3 -2
- data/lib/cisco_node_utils/cmd_ref/vlan.yaml +60 -32
- data/lib/cisco_node_utils/cmd_ref/vpc.yaml +118 -101
- data/lib/cisco_node_utils/cmd_ref/vrf.yaml +54 -58
- data/lib/cisco_node_utils/cmd_ref/vrf_af.yaml +118 -0
- data/lib/cisco_node_utils/cmd_ref/vtp.yaml +19 -25
- data/lib/cisco_node_utils/cmd_ref/vxlan_vtep.yaml +28 -18
- data/lib/cisco_node_utils/cmd_ref/vxlan_vtep_vni.yaml +34 -17
- data/lib/cisco_node_utils/cmd_ref/yum.yaml +6 -4
- data/lib/cisco_node_utils/command_reference.rb +261 -142
- data/lib/cisco_node_utils/constants.rb +33 -0
- data/lib/cisco_node_utils/encapsulation.rb +112 -0
- data/lib/cisco_node_utils/environment.rb +102 -0
- data/lib/cisco_node_utils/evpn_vni.rb +5 -3
- data/lib/cisco_node_utils/exceptions.rb +111 -0
- data/lib/cisco_node_utils/fabricpath_global.rb +52 -35
- data/lib/cisco_node_utils/fabricpath_topology.rb +44 -57
- data/lib/cisco_node_utils/feature.rb +165 -3
- data/lib/cisco_node_utils/interface.rb +1051 -260
- data/lib/cisco_node_utils/interface_channel_group.rb +11 -10
- data/lib/cisco_node_utils/interface_ospf.rb +1 -2
- data/lib/cisco_node_utils/interface_portchannel.rb +4 -12
- data/lib/cisco_node_utils/interface_service_vni.rb +7 -7
- data/lib/cisco_node_utils/itd_device_group.rb +248 -0
- data/lib/cisco_node_utils/itd_device_group_node.rb +144 -0
- data/lib/cisco_node_utils/itd_service.rb +523 -0
- data/lib/cisco_node_utils/logger.rb +75 -0
- data/lib/cisco_node_utils/node.rb +62 -192
- data/lib/cisco_node_utils/node_util.rb +56 -10
- data/lib/cisco_node_utils/overlay_global.rb +2 -2
- data/lib/cisco_node_utils/pim.rb +2 -13
- data/lib/cisco_node_utils/pim_group_list.rb +1 -1
- data/lib/cisco_node_utils/pim_rp_address.rb +1 -1
- data/lib/cisco_node_utils/platform.rb +52 -21
- data/lib/cisco_node_utils/portchannel_global.rb +89 -19
- data/lib/cisco_node_utils/radius_server.rb +168 -37
- data/lib/cisco_node_utils/router_ospf.rb +20 -35
- data/lib/cisco_node_utils/router_ospf_vrf.rb +4 -4
- data/lib/cisco_node_utils/snmpserver.rb +1 -6
- data/lib/cisco_node_utils/snmpuser.rb +6 -4
- data/lib/cisco_node_utils/stp_global.rb +676 -0
- data/lib/cisco_node_utils/syslog_server.rb +77 -18
- data/lib/cisco_node_utils/syslog_settings.rb +1 -1
- data/lib/cisco_node_utils/tacacs_server_group.rb +8 -4
- data/lib/cisco_node_utils/tacacs_server_host.rb +115 -25
- data/lib/cisco_node_utils/vdc.rb +12 -0
- data/lib/cisco_node_utils/version.rb +1 -1
- data/lib/cisco_node_utils/vlan.rb +147 -29
- data/lib/cisco_node_utils/vpc.rb +55 -3
- data/lib/cisco_node_utils/vrf.rb +72 -11
- data/lib/cisco_node_utils/vrf_af.rb +114 -29
- data/lib/cisco_node_utils/vtp.rb +34 -52
- data/lib/cisco_node_utils/vxlan_vtep.rb +34 -8
- data/lib/cisco_node_utils/vxlan_vtep_vni.rb +36 -4
- data/lib/minitest/environment_plugin.rb +31 -0
- data/lib/minitest/log_level_plugin.rb +41 -0
- data/spec/client_spec.rb +7 -0
- data/spec/environment_spec.rb +263 -0
- data/spec/grpc_client_spec.rb +23 -0
- data/spec/isolate/all_clients_spec.rb +9 -0
- data/spec/isolate/grpc_only_spec.rb +16 -0
- data/spec/isolate/no_clients_spec.rb +26 -0
- data/spec/isolate/nxapi_only_spec.rb +16 -0
- data/spec/nxapi_client_spec.rb +42 -0
- data/spec/schema.yaml +75 -0
- data/spec/shared_examples_for_clients.rb +14 -0
- data/spec/spec_helper.rb +91 -0
- data/spec/whitespace_spec.rb +10 -0
- data/spec/yaml_spec.rb +42 -0
- data/tests/.rubocop.yml +2 -2
- data/tests/CSCuxdublin-1.0.0-7.0.3.I3.1.lib32_n9000.rpm +0 -0
- data/tests/basetest.rb +96 -36
- data/tests/ciscotest.rb +220 -12
- data/tests/cmd_config.yaml +71 -49
- data/tests/cmd_config_invalid.yaml +1 -1
- data/tests/test_aaa_authentication_login.rb +1 -0
- data/tests/test_aaa_authentication_login_service.rb +9 -0
- data/tests/test_aaa_authorization_service.rb +173 -367
- data/tests/test_ace.rb +171 -100
- data/tests/test_acl.rb +10 -1
- data/tests/test_bgp_af.rb +395 -728
- data/tests/test_bgp_neighbor.rb +274 -115
- data/tests/test_bgp_neighbor_af.rb +178 -77
- data/tests/test_bridge_domain.rb +191 -0
- data/tests/test_bridge_domain_vni.rb +116 -0
- data/tests/test_client_utils.rb +111 -0
- data/tests/test_command_config.rb +9 -5
- data/tests/test_command_reference.rb +380 -102
- data/tests/test_dns_domain.rb +13 -3
- data/tests/test_domain_name.rb +13 -3
- data/tests/test_encapsulation.rb +77 -0
- data/tests/test_evpn_vni.rb +25 -7
- data/tests/test_fabricpath_global.rb +167 -163
- data/tests/test_fabricpath_topology.rb +12 -33
- data/tests/test_feature.rb +215 -0
- data/tests/test_grpc.rb +166 -0
- data/tests/test_interface.rb +585 -344
- data/tests/test_interface_bdi.rb +80 -0
- data/tests/test_interface_channel_group.rb +6 -3
- data/tests/test_interface_ospf.rb +26 -24
- data/tests/test_interface_portchannel.rb +1 -0
- data/tests/test_interface_private_vlan.rb +724 -0
- data/tests/test_interface_service_vni.rb +37 -66
- data/tests/test_interface_svi.rb +98 -101
- data/tests/test_interface_switchport.rb +419 -549
- data/tests/test_itd_device_group.rb +145 -0
- data/tests/test_itd_device_group_node.rb +199 -0
- data/tests/test_itd_service.rb +298 -0
- data/tests/test_logger.rb +43 -0
- data/tests/test_name_server.rb +11 -2
- data/tests/test_node.rb +16 -75
- data/tests/test_node_ext.rb +174 -163
- data/tests/test_node_util.rb +119 -0
- data/tests/test_ntp_config.rb +5 -1
- data/tests/test_ntp_server.rb +2 -2
- data/tests/test_nxapi.rb +221 -0
- data/tests/test_overlay_global.rb +47 -38
- data/tests/test_pim.rb +2 -0
- data/tests/test_pim_group_list.rb +2 -0
- data/tests/test_pim_rp_address.rb +2 -0
- data/tests/test_platform.rb +86 -39
- data/tests/test_portchannel_global.rb +211 -135
- data/tests/test_radius_global.rb +13 -5
- data/tests/test_radius_server.rb +256 -104
- data/tests/test_radius_server_group.rb +2 -0
- data/tests/test_router_bgp.rb +781 -485
- data/tests/test_router_ospf.rb +26 -103
- data/tests/test_router_ospf_vrf.rb +52 -57
- data/tests/test_snmp_notification_receiver.rb +2 -0
- data/tests/test_snmpcommunity.rb +2 -0
- data/tests/test_snmpgroup.rb +2 -0
- data/tests/test_snmpnotification.rb +40 -21
- data/tests/test_snmpserver.rb +2 -0
- data/tests/test_snmpuser.rb +2 -0
- data/tests/test_stp_global.rb +563 -0
- data/tests/test_syslog_server.rb +32 -8
- data/tests/test_syslog_settings.rb +22 -9
- data/tests/test_tacacs_server.rb +32 -27
- data/tests/test_tacacs_server_group.rb +100 -45
- data/tests/test_tacacs_server_host.rb +135 -43
- data/tests/test_vdc.rb +2 -16
- data/tests/test_vlan.rb +106 -54
- data/tests/test_vlan_mt_full.rb +11 -21
- data/tests/test_vlan_private.rb +669 -0
- data/tests/test_vpc.rb +312 -159
- data/tests/test_vrf.rb +122 -113
- data/tests/test_vrf_af.rb +238 -0
- data/tests/test_vtp.rb +58 -102
- data/tests/test_vxlan_vtep.rb +38 -17
- data/tests/test_vxlan_vtep_vni.rb +61 -9
- data/tests/test_yum.rb +49 -25
- metadata +122 -36
- data/lib/cisco_node_utils/cmd_ref/fex.yaml +0 -9
- data/lib/cisco_node_utils/cmd_ref/vni.yaml +0 -76
- data/lib/cisco_node_utils/vni.rb +0 -227
- data/tests/test_vni.rb +0 -106
@@ -0,0 +1,234 @@
|
|
1
|
+
|
2
|
+
# stp_global
|
3
|
+
---
|
4
|
+
_exclude: [ios_xr]
|
5
|
+
|
6
|
+
_template:
|
7
|
+
get_command: "show running-config spanning-tree"
|
8
|
+
|
9
|
+
bd_designated_priority:
|
10
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
11
|
+
multiple:
|
12
|
+
get_context: ['/^spanning-tree pseudo-information$/']
|
13
|
+
get_value: '/^bridge-domain (.*) designated priority (.*)$/'
|
14
|
+
set_context: ["spanning-tree pseudo-information"]
|
15
|
+
set_value: "<state> bridge-domain <range> designated priority <val>"
|
16
|
+
default_value: []
|
17
|
+
|
18
|
+
bd_forward_time:
|
19
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
20
|
+
multiple:
|
21
|
+
get_value: '/^spanning-tree bridge-domain (.*) forward-time (.*)$/'
|
22
|
+
set_value: "<state> spanning-tree bridge-domain <range> forward-time <val>"
|
23
|
+
default_value: []
|
24
|
+
|
25
|
+
bd_hello_time:
|
26
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
27
|
+
multiple:
|
28
|
+
get_value: '/^spanning-tree bridge-domain (.*) hello-time (.*)$/'
|
29
|
+
set_value: "<state> spanning-tree bridge-domain <range> hello-time <val>"
|
30
|
+
default_value: []
|
31
|
+
|
32
|
+
bd_max_age:
|
33
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
34
|
+
multiple:
|
35
|
+
get_value: '/^spanning-tree bridge-domain (.*) max-age (.*)$/'
|
36
|
+
set_value: "<state> spanning-tree bridge-domain <range> max-age <val>"
|
37
|
+
default_value: []
|
38
|
+
|
39
|
+
bd_priority:
|
40
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
41
|
+
multiple:
|
42
|
+
get_value: '/^spanning-tree bridge-domain (.*) priority (.*)$/'
|
43
|
+
set_value: "<state> spanning-tree bridge-domain <range> priority <val>"
|
44
|
+
default_value: []
|
45
|
+
|
46
|
+
bd_range:
|
47
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
48
|
+
kind: string
|
49
|
+
default_only: "2-3967"
|
50
|
+
|
51
|
+
bd_root_priority:
|
52
|
+
_exclude: [N3k, N5k, N6k, N8k, N9k]
|
53
|
+
multiple:
|
54
|
+
get_context: ['/^spanning-tree pseudo-information$/']
|
55
|
+
get_value: '/^bridge-domain (.*) root priority (.*)$/'
|
56
|
+
set_context: ["spanning-tree pseudo-information"]
|
57
|
+
set_value: "<state> bridge-domain <range> root priority <val>"
|
58
|
+
default_value: []
|
59
|
+
|
60
|
+
bpdufilter:
|
61
|
+
kind: boolean
|
62
|
+
get_value: '/^spanning-tree port type edge bpdufilter default$/'
|
63
|
+
set_value: "<state> spanning-tree port type edge bpdufilter default"
|
64
|
+
default_value: false
|
65
|
+
|
66
|
+
bpduguard:
|
67
|
+
kind: boolean
|
68
|
+
get_value: '/^spanning-tree port type edge bpduguard default$/'
|
69
|
+
set_value: "<state> spanning-tree port type edge bpduguard default"
|
70
|
+
default_value: false
|
71
|
+
|
72
|
+
bridge_assurance:
|
73
|
+
kind: boolean
|
74
|
+
auto_default: false
|
75
|
+
get_command: "show running-config spanning-tree all"
|
76
|
+
get_value: '/^spanning-tree bridge assurance$/'
|
77
|
+
set_value: "<state> spanning-tree bridge assurance"
|
78
|
+
default_value: true
|
79
|
+
|
80
|
+
domain:
|
81
|
+
_exclude: [N3k, N8k, N9k]
|
82
|
+
kind: int
|
83
|
+
get_value: '/^spanning-tree domain (\d+)$/'
|
84
|
+
set_value: "<state> spanning-tree domain <domain>"
|
85
|
+
default_value: false
|
86
|
+
|
87
|
+
fcoe:
|
88
|
+
_exclude: [N3k, N5k, N6k, N7k]
|
89
|
+
kind: boolean
|
90
|
+
auto_default: false
|
91
|
+
get_command: "show running-config spanning-tree all"
|
92
|
+
get_value: '/^spanning-tree fcoe$/'
|
93
|
+
set_value: "<state> spanning-tree fcoe"
|
94
|
+
default_value: true
|
95
|
+
|
96
|
+
loopguard:
|
97
|
+
kind: boolean
|
98
|
+
get_value: '/^spanning-tree loopguard default$/'
|
99
|
+
set_value: "<state> spanning-tree loopguard default"
|
100
|
+
default_value: false
|
101
|
+
|
102
|
+
mode:
|
103
|
+
kind: string
|
104
|
+
get_value: '/^spanning-tree mode (.*)$/'
|
105
|
+
set_value: "<state> spanning-tree mode <mode>"
|
106
|
+
default_value: "rapid-pvst"
|
107
|
+
|
108
|
+
mst_designated_priority:
|
109
|
+
multiple:
|
110
|
+
get_context: ['/^spanning-tree pseudo-information$/']
|
111
|
+
get_value: '/^mst (.*) designated priority (.*)$/'
|
112
|
+
set_context: ["spanning-tree pseudo-information"]
|
113
|
+
set_value: "<state> mst <range> designated priority <val>"
|
114
|
+
default_value: []
|
115
|
+
|
116
|
+
mst_forward_time:
|
117
|
+
kind: int
|
118
|
+
get_value: '/^spanning-tree mst forward-time (\d+)$/'
|
119
|
+
set_value: "<state> spanning-tree mst forward-time <ft>"
|
120
|
+
default_value: 15
|
121
|
+
|
122
|
+
mst_hello_time:
|
123
|
+
kind: int
|
124
|
+
get_value: '/^spanning-tree mst hello-time (\d+)$/'
|
125
|
+
set_value: "<state> spanning-tree mst hello-time <ht>"
|
126
|
+
default_value: 2
|
127
|
+
|
128
|
+
mst_inst_range:
|
129
|
+
kind: string
|
130
|
+
default_only: "1-4094"
|
131
|
+
|
132
|
+
mst_inst_vlan_map:
|
133
|
+
multiple:
|
134
|
+
get_context: ['/^spanning-tree mst configuration$/']
|
135
|
+
get_value: '/^instance (.*) vlan (.*)$/'
|
136
|
+
set_context: ["spanning-tree mst configuration"]
|
137
|
+
set_value: "<state> instance <instance> <vlan> <range>"
|
138
|
+
default_value: []
|
139
|
+
|
140
|
+
mst_max_age:
|
141
|
+
kind: int
|
142
|
+
get_value: '/^spanning-tree mst max-age (\d+)$/'
|
143
|
+
set_value: "<state> spanning-tree mst max-age <ma>"
|
144
|
+
default_value: 20
|
145
|
+
|
146
|
+
mst_max_hops:
|
147
|
+
kind: int
|
148
|
+
get_value: '/^spanning-tree mst max-hops (\d+)$/'
|
149
|
+
set_value: "<state> spanning-tree mst max-hops <mh>"
|
150
|
+
default_value: 20
|
151
|
+
|
152
|
+
mst_name:
|
153
|
+
kind: string
|
154
|
+
get_context: ['/^spanning-tree mst configuration$/']
|
155
|
+
get_value: '/^name (.*)$/'
|
156
|
+
set_context: ["spanning-tree mst configuration"]
|
157
|
+
set_value: "<state> name <name>"
|
158
|
+
default_value: false
|
159
|
+
|
160
|
+
mst_priority:
|
161
|
+
multiple:
|
162
|
+
get_value: '/^spanning-tree mst (.*) priority (.*)$/'
|
163
|
+
set_value: "<state> spanning-tree mst <range> priority <val>"
|
164
|
+
default_value: []
|
165
|
+
|
166
|
+
mst_range:
|
167
|
+
kind: string
|
168
|
+
default_only: "0-4094"
|
169
|
+
|
170
|
+
mst_revision:
|
171
|
+
kind: int
|
172
|
+
get_context: ['/^spanning-tree mst configuration$/']
|
173
|
+
get_value: '/^revision (\d+)$/'
|
174
|
+
set_context: ["spanning-tree mst configuration"]
|
175
|
+
set_value: "<state> revision <rev>"
|
176
|
+
default_value: 0
|
177
|
+
|
178
|
+
mst_root_priority:
|
179
|
+
multiple:
|
180
|
+
get_context: ['/^spanning-tree pseudo-information$/']
|
181
|
+
get_value: '/^mst (.*) root priority (.*)$/'
|
182
|
+
set_context: ["spanning-tree pseudo-information"]
|
183
|
+
set_value: "<state> mst <range> root priority <val>"
|
184
|
+
default_value: []
|
185
|
+
|
186
|
+
pathcost:
|
187
|
+
kind: string
|
188
|
+
get_value: '/^spanning-tree pathcost method (.*)$/'
|
189
|
+
set_value: "<state> spanning-tree pathcost method <method>"
|
190
|
+
default_value: "short"
|
191
|
+
|
192
|
+
vlan_designated_priority:
|
193
|
+
multiple:
|
194
|
+
get_context: ['/^spanning-tree pseudo-information$/']
|
195
|
+
get_value: '/^vlan (.*) designated priority (.*)$/'
|
196
|
+
set_context: ["spanning-tree pseudo-information"]
|
197
|
+
set_value: "<state> vlan <range> designated priority <val>"
|
198
|
+
default_value: []
|
199
|
+
|
200
|
+
vlan_forward_time:
|
201
|
+
multiple:
|
202
|
+
get_value: '/^spanning-tree vlan (.*) forward-time (.*)$/'
|
203
|
+
set_value: "<state> spanning-tree vlan <range> forward-time <val>"
|
204
|
+
default_value: []
|
205
|
+
|
206
|
+
vlan_hello_time:
|
207
|
+
multiple:
|
208
|
+
get_value: '/^spanning-tree vlan (.*) hello-time (.*)$/'
|
209
|
+
set_value: "<state> spanning-tree vlan <range> hello-time <val>"
|
210
|
+
default_value: []
|
211
|
+
|
212
|
+
vlan_max_age:
|
213
|
+
multiple:
|
214
|
+
get_value: '/^spanning-tree vlan (.*) max-age (.*)$/'
|
215
|
+
set_value: "<state> spanning-tree vlan <range> max-age <val>"
|
216
|
+
default_value: []
|
217
|
+
|
218
|
+
vlan_priority:
|
219
|
+
multiple:
|
220
|
+
get_value: '/^spanning-tree vlan (.*) priority (.*)$/'
|
221
|
+
set_value: "<state> spanning-tree vlan <range> priority <val>"
|
222
|
+
default_value: []
|
223
|
+
|
224
|
+
vlan_range:
|
225
|
+
kind: string
|
226
|
+
default_only: "1-3967"
|
227
|
+
|
228
|
+
vlan_root_priority:
|
229
|
+
multiple:
|
230
|
+
get_context: ['/^spanning-tree pseudo-information$/']
|
231
|
+
get_value: '/^vlan (.*) root priority (.*)$/'
|
232
|
+
set_context: ["spanning-tree pseudo-information"]
|
233
|
+
set_value: "<state> vlan <range> root priority <val>"
|
234
|
+
default_value: []
|
@@ -1,18 +1,33 @@
|
|
1
1
|
# syslog_server
|
2
2
|
---
|
3
3
|
level:
|
4
|
-
kind: int
|
5
|
-
config_get: "show running-config all | include '^logging server'"
|
6
|
-
config_get_token: '/^logging server %s (\d).*/'
|
7
4
|
default_value: ~
|
5
|
+
nexus:
|
6
|
+
kind: int
|
7
|
+
get_command: "show running-config all | include '^logging server'"
|
8
|
+
get_value: '/^logging server %s (\d).*/'
|
9
|
+
ios_xr:
|
10
|
+
multiple: true
|
11
|
+
get_command: "show running-config logging"
|
12
|
+
get_value: '/^logging %s.* severity (\S+)/'
|
8
13
|
|
9
14
|
server:
|
10
15
|
multiple: true
|
11
|
-
|
12
|
-
|
13
|
-
|
16
|
+
nexus:
|
17
|
+
get_command: "show running-config all | include '^logging server'"
|
18
|
+
get_value: '/^logging server (\S+).*/'
|
19
|
+
set_value: '<state> logging server <ip> <level> <vrf>'
|
20
|
+
ios_xr:
|
21
|
+
get_command: "show running-config logging"
|
22
|
+
get_value: '/^logging (\S+).*/'
|
23
|
+
set_value: '<state> logging <ip> <vrf> <level>'
|
14
24
|
|
15
25
|
vrf:
|
16
|
-
|
17
|
-
|
18
|
-
|
26
|
+
default_value: default
|
27
|
+
nexus:
|
28
|
+
get_command: "show running-config all | include '^logging server(.*)(use-vrf)'"
|
29
|
+
get_value: '/^logging server %s.* use-vrf (.*)$/'
|
30
|
+
ios_xr:
|
31
|
+
multiple: true
|
32
|
+
get_command: "show running-config logging"
|
33
|
+
get_value: '/^logging %s.* vrf (\S+)/'
|
@@ -1,7 +1,9 @@
|
|
1
1
|
# syslog_settings
|
2
2
|
---
|
3
|
+
_exclude: [ios_xr]
|
4
|
+
|
3
5
|
timestamp:
|
4
|
-
|
5
|
-
|
6
|
-
|
6
|
+
get_command: "show running-config all | include '^logging timestamp'"
|
7
|
+
get_value: '/^logging timestamp (.*)$/'
|
8
|
+
set_value: '<state> logging timestamp <units>'
|
7
9
|
default_value: 'seconds'
|
@@ -1,6 +1,7 @@
|
|
1
1
|
# system
|
2
2
|
---
|
3
3
|
resources:
|
4
|
-
|
5
|
-
|
6
|
-
|
4
|
+
# grpc doesn't allow this command
|
5
|
+
# get_command: 'monitor threads iteration 1'
|
6
|
+
_exclude: [ios_xr]
|
7
|
+
get_command: "show system resources"
|
@@ -1,49 +1,51 @@
|
|
1
1
|
# tacacs_server
|
2
2
|
---
|
3
|
+
_exclude: [ios_xr]
|
4
|
+
|
3
5
|
deadtime:
|
4
6
|
kind: int
|
5
|
-
|
6
|
-
|
7
|
-
|
7
|
+
get_command: "show run tacacs all"
|
8
|
+
get_value: '/^tacacs-server deadtime\s+(\d+)/'
|
9
|
+
set_value: "%s tacacs-server deadtime %d"
|
8
10
|
default_value: 0
|
9
11
|
|
10
12
|
directed_request:
|
11
13
|
kind: boolean
|
12
14
|
# oddly, directed request must be retrieved from aaa output
|
13
|
-
|
14
|
-
|
15
|
-
|
15
|
+
get_command: "show running aaa all"
|
16
|
+
get_value: '/(?:no)?\s*tacacs-server directed-request/'
|
17
|
+
set_value: "%s tacacs-server directed-request"
|
16
18
|
default_value: false
|
17
19
|
|
18
20
|
encryption:
|
19
|
-
|
21
|
+
set_value: "%s tacacs-server key %d %s"
|
20
22
|
|
21
23
|
encryption_password:
|
22
|
-
|
23
|
-
|
24
|
+
get_command: "show run tacacs all"
|
25
|
+
get_value: '/^tacacs-server key (\d+)\s+(\S+)/'
|
24
26
|
default_value: ""
|
25
27
|
|
26
28
|
encryption_type:
|
27
29
|
auto_default: false
|
28
|
-
|
29
|
-
|
30
|
+
get_command: "show run tacacs all"
|
31
|
+
get_value: '/^tacacs-server key (\d+)\s+(\S+)/'
|
30
32
|
default_value: 0
|
31
33
|
|
32
34
|
feature:
|
33
35
|
kind: boolean
|
34
|
-
|
35
|
-
|
36
|
-
|
36
|
+
get_command: "show run tacacs all"
|
37
|
+
get_value: '/^feature tacacs/'
|
38
|
+
set_value: "%s feature tacacs+"
|
37
39
|
|
38
40
|
source_interface:
|
39
|
-
|
40
|
-
|
41
|
-
|
41
|
+
get_command: "show run tacacs all"
|
42
|
+
get_value: '/(no)?\s*ip tacacs source-interface\s+(\S+)?/'
|
43
|
+
set_value: "%s ip tacacs source-interface %s"
|
42
44
|
default_value: ""
|
43
45
|
|
44
46
|
timeout:
|
45
47
|
kind: int
|
46
|
-
|
47
|
-
|
48
|
-
|
48
|
+
get_command: "show run tacacs all"
|
49
|
+
get_value: '/tacacs-server timeout\s+(\d+)/'
|
50
|
+
set_value: "%s tacacs-server timeout %d"
|
49
51
|
default_value: 5
|
@@ -1,33 +1,45 @@
|
|
1
1
|
# tacacs_server_group
|
2
2
|
---
|
3
|
+
_template:
|
4
|
+
nexus:
|
5
|
+
get_command: "show run tacacs all"
|
6
|
+
ios_xr:
|
7
|
+
get_command: "show running-config aaa"
|
8
|
+
|
3
9
|
deadtime:
|
4
|
-
|
5
|
-
|
6
|
-
|
10
|
+
_exclude: [ios_xr]
|
11
|
+
get_context: ['/^aaa group server tacacs\+ %s/']
|
12
|
+
get_value: '/^deadtime (\d+)/'
|
13
|
+
set_context: ["aaa group server tacacs <name>"]
|
14
|
+
set_value: "<state> deadtime <deadtime>"
|
7
15
|
default_value: 0
|
8
16
|
|
9
17
|
group:
|
10
18
|
multiple: true
|
11
|
-
|
12
|
-
|
13
|
-
config_set: '<state> aaa group server tacacs <name>'
|
19
|
+
get_value: '/^aaa group server tacacs\+ (\S+)/'
|
20
|
+
set_value: '<state> aaa group server tacacs <name>'
|
14
21
|
default_value: []
|
15
22
|
|
16
23
|
servers:
|
17
24
|
multiple: true
|
18
|
-
|
19
|
-
|
20
|
-
|
25
|
+
get_context: ['/^aaa group server tacacs\+ %s/']
|
26
|
+
get_value: '/^server (\S+)/'
|
27
|
+
set_context: ["aaa group server tacacs <name>"]
|
28
|
+
set_value: '<state> server <server>'
|
21
29
|
default_value: []
|
22
30
|
|
23
31
|
source_interface:
|
24
|
-
|
25
|
-
|
26
|
-
|
32
|
+
_exclude: [ios_xr]
|
33
|
+
get_context: ['/^aaa group server tacacs\+ %s/']
|
34
|
+
get_value: '/^source-interface (\S+)/'
|
35
|
+
set_context: ["aaa group server tacacs <name>"]
|
36
|
+
set_value: "<state> source-interface <interface>"
|
27
37
|
default_value: ""
|
28
38
|
|
29
39
|
vrf:
|
30
|
-
|
31
|
-
|
32
|
-
|
40
|
+
_exclude: [ios_xr]
|
41
|
+
get_context: ['/^aaa group server tacacs\+ %s/']
|
42
|
+
get_value: '/^use-vrf (\S+)/'
|
43
|
+
set_context: ["aaa group server tacacs <name>"]
|
44
|
+
set_value: "<state> use-vrf <vrf>"
|
33
45
|
default_value: "default"
|
@@ -1,35 +1,64 @@
|
|
1
1
|
# tacacs_server_host
|
2
2
|
---
|
3
|
+
_template:
|
4
|
+
nexus:
|
5
|
+
get_command: "show run tacacs all"
|
6
|
+
ios_xr:
|
7
|
+
get_command: "show running-config tacacs-server"
|
8
|
+
|
3
9
|
encryption:
|
4
|
-
|
10
|
+
nexus:
|
11
|
+
set_value: "<state> tacacs-server host <ip> key <enc_type> <password>"
|
12
|
+
ios_xr:
|
13
|
+
context: ["tacacs-server host <ip> port <port>"]
|
14
|
+
set_value: '<state> key <enc_type> <password>'
|
5
15
|
|
6
16
|
encryption_password:
|
7
|
-
config_get: "show run tacacs all"
|
8
|
-
config_get_token: '/^tacacs-server host %s key \d+\s+(\S+)/'
|
9
17
|
default_value: ""
|
18
|
+
nexus:
|
19
|
+
get_value: '/^tacacs-server host <ip> key \d+\s+(\S+)/'
|
20
|
+
ios_xr:
|
21
|
+
context: ["tacacs-server host <ip> port <port>"]
|
22
|
+
get_value: '/key \d+\s+(\S+)$/'
|
10
23
|
|
11
24
|
encryption_type:
|
12
|
-
|
13
|
-
|
25
|
+
nexus:
|
26
|
+
get_value: '/^tacacs-server host <ip> key (\d+)/'
|
27
|
+
ios_xr:
|
28
|
+
context: ["tacacs-server host <ip> port <port>"]
|
29
|
+
get_value: '/key (\d+)/'
|
14
30
|
|
15
31
|
host:
|
16
|
-
|
32
|
+
nexus:
|
33
|
+
set_value: "<state> tacacs-server host <ip>"
|
34
|
+
ios_xr:
|
35
|
+
set_value: "<state> tacacs-server host <ip> port <port>"
|
36
|
+
|
37
|
+
host_port_pairs:
|
38
|
+
_exclude: [nexus]
|
39
|
+
multiple: true
|
40
|
+
get_command: "show running-config tacacs-server"
|
41
|
+
get_value: '/^tacacs-server host <ip> port (\d+)/'
|
42
|
+
default_value: ''
|
17
43
|
|
18
44
|
hosts:
|
19
45
|
multiple: true
|
20
|
-
|
21
|
-
config_get_token: '/^tacacs-server host (\S+)/'
|
46
|
+
get_value: '/^tacacs-server host (\S+)/'
|
22
47
|
|
23
48
|
port:
|
24
|
-
kind: int
|
25
|
-
config_get: "show run tacacs all"
|
26
|
-
config_get_token: '/^tacacs-server host %s .*port (\d+)/'
|
27
|
-
config_set: "tacacs-server host %s port %s"
|
28
49
|
default_value: 49
|
50
|
+
kind: int
|
51
|
+
get_value: '/^tacacs-server host <ip>.* port (\d+).*$/'
|
52
|
+
nexus:
|
53
|
+
set_value: "tacacs-server host <ip> port <port>"
|
29
54
|
|
30
55
|
timeout:
|
31
|
-
kind: int
|
32
|
-
config_get: "show run tacacs all"
|
33
|
-
config_get_token: '/^tacacs-server host %s .*timeout (\d+)/'
|
34
|
-
config_set: "%s tacacs-server host %s timeout %s"
|
35
56
|
default_value: 0
|
57
|
+
kind: int
|
58
|
+
nexus:
|
59
|
+
get_value: '/^tacacs-server host <ip> .*timeout (\d+)/'
|
60
|
+
set_value: "<state> tacacs-server host <ip> timeout <timeout>"
|
61
|
+
ios_xr:
|
62
|
+
context: ["tacacs-server host <ip> port <port>"]
|
63
|
+
get_value: '/timeout (\d+).*$/'
|
64
|
+
set_value: '<state> timeout <timeout>'
|