cisco_node_utils 1.2.0 → 1.3.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 +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>'
|