cisco_node_utils 1.6.0 → 1.7.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.
Files changed (82) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +60 -1
  3. data/Gemfile +1 -1
  4. data/LICENSE +1 -1
  5. data/README.md +1 -1
  6. data/cisco_node_utils.gemspec +1 -1
  7. data/docs/README-develop-node-utils-APIs.md +2 -0
  8. data/docs/README-maintainers.md +45 -80
  9. data/lib/cisco_node_utils/ace.rb +24 -43
  10. data/lib/cisco_node_utils/bfd_global.rb +1 -0
  11. data/lib/cisco_node_utils/bgp_af_aggr_addr.rb +207 -0
  12. data/lib/cisco_node_utils/bgp_neighbor.rb +8 -5
  13. data/lib/cisco_node_utils/bgp_neighbor_af.rb +8 -6
  14. data/lib/cisco_node_utils/cisco_cmn_utils.rb +40 -0
  15. data/lib/cisco_node_utils/cmd_ref/bfd_global.yaml +1 -1
  16. data/lib/cisco_node_utils/cmd_ref/bgp.yaml +8 -4
  17. data/lib/cisco_node_utils/cmd_ref/bgp_af_aa.yaml +38 -0
  18. data/lib/cisco_node_utils/cmd_ref/bgp_neighbor.yaml +9 -4
  19. data/lib/cisco_node_utils/cmd_ref/bgp_neighbor_af.yaml +8 -3
  20. data/lib/cisco_node_utils/cmd_ref/dhcp_relay_global.yaml +2 -1
  21. data/lib/cisco_node_utils/cmd_ref/feature.yaml +5 -0
  22. data/lib/cisco_node_utils/cmd_ref/interface.yaml +8 -0
  23. data/lib/cisco_node_utils/cmd_ref/interface_channel_group.yaml +7 -3
  24. data/lib/cisco_node_utils/cmd_ref/inventory.yaml +3 -3
  25. data/lib/cisco_node_utils/cmd_ref/ntp_auth_key.yaml +10 -0
  26. data/lib/cisco_node_utils/cmd_ref/ntp_config.yaml +13 -0
  27. data/lib/cisco_node_utils/cmd_ref/ntp_server.yaml +10 -2
  28. data/lib/cisco_node_utils/cmd_ref/overlay_global.yaml +6 -1
  29. data/lib/cisco_node_utils/cmd_ref/route_map.yaml +8 -0
  30. data/lib/cisco_node_utils/cmd_ref/span_session.yaml +65 -0
  31. data/lib/cisco_node_utils/cmd_ref/stp_global.yaml +2 -1
  32. data/lib/cisco_node_utils/cmd_ref/vpc.yaml +22 -3
  33. data/lib/cisco_node_utils/cmd_ref/vxlan_vtep.yaml +2 -1
  34. data/lib/cisco_node_utils/cmd_ref/vxlan_vtep_vni.yaml +6 -3
  35. data/lib/cisco_node_utils/cmd_ref/yum.yaml +48 -4
  36. data/lib/cisco_node_utils/command_reference.rb +5 -2
  37. data/lib/cisco_node_utils/feature.rb +14 -1
  38. data/lib/cisco_node_utils/interface.rb +13 -0
  39. data/lib/cisco_node_utils/interface_channel_group.rb +33 -25
  40. data/lib/cisco_node_utils/itd_device_group.rb +17 -37
  41. data/lib/cisco_node_utils/itd_service.rb +9 -32
  42. data/lib/cisco_node_utils/node.rb +12 -4
  43. data/lib/cisco_node_utils/ntp_auth_key.rb +67 -0
  44. data/lib/cisco_node_utils/ntp_config.rb +19 -1
  45. data/lib/cisco_node_utils/ntp_server.rb +28 -27
  46. data/lib/cisco_node_utils/route_map.rb +33 -51
  47. data/lib/cisco_node_utils/snmpuser.rb +2 -2
  48. data/lib/cisco_node_utils/span_session.rb +149 -0
  49. data/lib/cisco_node_utils/upgrade.rb +21 -17
  50. data/lib/cisco_node_utils/version.rb +2 -2
  51. data/lib/cisco_node_utils/vlan.rb +1 -1
  52. data/lib/cisco_node_utils/vpc.rb +40 -0
  53. data/lib/cisco_node_utils/yum.rb +136 -13
  54. data/spec/schema.yaml +2 -0
  55. data/tests/ciscotest.rb +36 -0
  56. data/tests/test_ace.rb +6 -0
  57. data/tests/test_bfd_global.rb +1 -7
  58. data/tests/test_bgp_af.rb +2 -2
  59. data/tests/test_bgp_af_aa.rb +108 -0
  60. data/tests/test_bgp_neighbor.rb +2 -1
  61. data/tests/test_bgp_neighbor_af.rb +6 -6
  62. data/tests/test_dhcp_relay_global.rb +1 -0
  63. data/tests/test_interface.rb +18 -2
  64. data/tests/test_interface_channel_group.rb +47 -0
  65. data/tests/test_interface_svi.rb +1 -1
  66. data/tests/test_ntp_auth_key.rb +77 -0
  67. data/tests/test_ntp_config.rb +51 -4
  68. data/tests/test_ntp_server.rb +69 -9
  69. data/tests/test_overlay_global.rb +1 -0
  70. data/tests/test_route_map.rb +13 -24
  71. data/tests/test_router_bgp.rb +14 -9
  72. data/tests/test_span_session.rb +155 -0
  73. data/tests/test_stp_global.rb +1 -0
  74. data/tests/test_upgrade.rb +2 -3
  75. data/tests/test_vlan.rb +24 -3
  76. data/tests/test_vlan_private.rb +1 -1
  77. data/tests/test_vpc.rb +42 -17
  78. data/tests/test_vxlan_vtep.rb +1 -0
  79. data/tests/test_vxlan_vtep_vni.rb +5 -1
  80. data/tests/test_yum.rb +7 -30
  81. data/tests/yum_package.yaml +20 -0
  82. metadata +13 -3
@@ -381,7 +381,7 @@ class TestVlanPVlan < CiscoTestCase
381
381
  assert_equal(result, v1.pvlan_association)
382
382
 
383
383
  pv_type = 'isolated'
384
- assert_raises(RuntimeError, 'vlan misconf did not raise RuntimeError') do
384
+ assert_raises(CliError, 'vlan misconf did not raise CliError') do
385
385
  v3.pvlan_type = pv_type
386
386
  end
387
387
 
data/tests/test_vpc.rb CHANGED
@@ -130,11 +130,7 @@ class TestVpc < CiscoTestCase
130
130
 
131
131
  def test_layer3_peer_routing
132
132
  vpc = Vpc.new(100)
133
- if validate_property_excluded?('vpc', 'layer3_peer_routing')
134
- assert_raises(Cisco::UnsupportedError) { vpc.layer3_peer_routing = true }
135
- return
136
- end
137
-
133
+ skip_incompat_version?('vpc', 'layer3_peer_routing')
138
134
  default_val = vpc.default_layer3_peer_routing
139
135
  assert_equal(default_val, vpc.layer3_peer_routing,
140
136
  "layer3_peer_routing should be #{default_val} by default")
@@ -196,6 +192,39 @@ class TestVpc < CiscoTestCase
196
192
  refute(vpc.peer_gateway, 'peer_gateway not getting disabled')
197
193
  end
198
194
 
195
+ def test_peer_switch
196
+ vpc = Vpc.new(100)
197
+ default_val = vpc.default_peer_switch
198
+ assert_equal(default_val, vpc.peer_switch,
199
+ "peer_switch should be #{default_val} by default")
200
+ vpc.peer_switch = true
201
+ assert(vpc.peer_switch, 'peer_switch not getting set')
202
+ vpc.peer_switch = false
203
+ refute(vpc.peer_switch, 'peer_switch not getting disabled')
204
+ end
205
+
206
+ def test_arp_synchronize
207
+ vpc = Vpc.new(100)
208
+ default_val = vpc.default_arp_synchronize
209
+ assert_equal(default_val, vpc.arp_synchronize,
210
+ "arp_synchronize should be #{default_val} by default")
211
+ vpc.arp_synchronize = true
212
+ assert(vpc.arp_synchronize, 'arp_synchronize not getting set')
213
+ vpc.arp_synchronize = false
214
+ refute(vpc.arp_synchronize, 'arp_synchronize not getting disabled')
215
+ end
216
+
217
+ def test_nd_synchronize
218
+ vpc = Vpc.new(100)
219
+ default_val = vpc.default_nd_synchronize
220
+ assert_equal(default_val, vpc.nd_synchronize,
221
+ "nd_synchronize should be #{default_val} by default")
222
+ vpc.nd_synchronize = true
223
+ assert(vpc.nd_synchronize, 'nd_synchronize not getting set')
224
+ vpc.nd_synchronize = false
225
+ refute(vpc.nd_synchronize, 'nd_synchronize not getting disabled')
226
+ end
227
+
199
228
  def test_peer_gateway_exclude_bridge_domain
200
229
  vpc = Vpc.new(100)
201
230
  if validate_property_excluded?('vpc', 'peer_gateway_exclude_bridge_domain')
@@ -254,11 +283,7 @@ class TestVpc < CiscoTestCase
254
283
 
255
284
  def test_shutdown
256
285
  vpc = Vpc.new(100)
257
- if validate_property_excluded?('vpc', 'shutdown')
258
- assert_raises(Cisco::UnsupportedError) { vpc.shutdown = true }
259
- return
260
- end
261
-
286
+ skip_incompat_version?('vpc', 'shutdown')
262
287
  vpc.shutdown = vpc.default_shutdown
263
288
  refute(vpc.shutdown, 'Vpc domain should not be shutdown')
264
289
 
@@ -315,7 +340,7 @@ class TestVpc < CiscoTestCase
315
340
  6, 3)
316
341
  # init channel group as none first, to test phy-port vPC link
317
342
  interface = InterfaceChannelGroup.new(interfaces[0])
318
- interface.channel_group = false if interface.channel_group
343
+ interface.channel_group_mode_set(false) if interface.channel_group
319
344
  # Phy port vPC is supported only on N7K
320
345
  if /N7/ =~ node.product_id
321
346
  phy_port_iflist =
@@ -340,7 +365,7 @@ class TestVpc < CiscoTestCase
340
365
  end
341
366
  end
342
367
  # test port-channel vpc
343
- interface.channel_group = 10
368
+ interface.channel_group_mode_set(10)
344
369
  interface_pc = Interface.new('port-channel10')
345
370
  interface_pc.switchport_mode = :trunk
346
371
  interface_pc.vpc_id = 20
@@ -353,7 +378,7 @@ class TestVpc < CiscoTestCase
353
378
  # clean-up
354
379
  interface_pc.vpc_id = false
355
380
  # remove PC
356
- interface.channel_group = false
381
+ interface.channel_group_mode_set(false)
357
382
  refute(interface.channel_group, 'Port channel not cleaned up')
358
383
  end
359
384
 
@@ -363,7 +388,7 @@ class TestVpc < CiscoTestCase
363
388
  vpc.peer_keepalive_set('1.1.1.2', '1.1.1.1', 3800, 'management', 400, 3,
364
389
  6, 3)
365
390
  interface = InterfaceChannelGroup.new(interfaces[1])
366
- interface.channel_group = 100
391
+ interface.channel_group_mode_set(100)
367
392
  interface_pc = Interface.new('port-channel100')
368
393
  interface_pc.switchport_mode = :trunk
369
394
  refute(interface_pc.vpc_peer_link,
@@ -379,7 +404,7 @@ class TestVpc < CiscoTestCase
379
404
  end
380
405
 
381
406
  # clean up
382
- interface.channel_group = false
407
+ interface.channel_group_mode_set(false)
383
408
  refute(interface.channel_group, 'channel group should be unset')
384
409
  # try with a phy port
385
410
  interface = Interface.new(interfaces[1])
@@ -497,7 +522,7 @@ class TestVpc < CiscoTestCase
497
522
  vpc.peer_keepalive_set('1.1.1.2', '1.1.1.1', 3800, 'management', 400, 3,
498
523
  6, 3)
499
524
  interface = InterfaceChannelGroup.new(interfaces[1])
500
- interface.channel_group = 100
525
+ interface.channel_group_mode_set(100)
501
526
  interface_pc = Interface.new('port-channel100')
502
527
  interface_pc.switchport_mode = :fabricpath
503
528
  refute(interface_pc.vpc_peer_link,
@@ -507,7 +532,7 @@ class TestVpc < CiscoTestCase
507
532
  interface_pc.vpc_peer_link = false
508
533
  refute(interface_pc.vpc_peer_link, 'vpc_peer_link should not be set')
509
534
  # clean up
510
- interface.channel_group = false
535
+ interface.channel_group_mode_set(false)
511
536
  refute(interface.channel_group, 'channel group should be unset')
512
537
  # try with a phy port
513
538
  interface = Interface.new(interfaces[1])
@@ -193,6 +193,7 @@ class TestVxlanVtep < CiscoTestCase
193
193
  return
194
194
  end
195
195
 
196
+ skip_incompat_version?('vxlan_vtep', 'source_intf_hold_down_time')
196
197
  # Set source_interface to non-default value
197
198
  val = 'loopback55'
198
199
  vtep.source_interface = val
@@ -120,6 +120,7 @@ class TestVxlanVtepVni < CiscoTestCase
120
120
  return
121
121
  end
122
122
 
123
+ skip_incompat_version?('vxlan_vtep_vni', 'ingress_replication')
123
124
  # Test non-default values
124
125
  vni.ingress_replication = 'static'
125
126
  assert_equal('static', vni.ingress_replication)
@@ -157,6 +158,7 @@ class TestVxlanVtepVni < CiscoTestCase
157
158
 
158
159
  # Test the case where an existing ingress_replication is removed before
159
160
  # configuring multicast_group
161
+ skip_incompat_version?('vxlan_vtep_vni', 'ingress_replication')
160
162
  unless validate_property_excluded?('vxlan_vtep_vni', 'ingress_replication')
161
163
  vni1.ingress_replication = 'static'
162
164
  assert_equal('static', vni1.ingress_replication)
@@ -178,11 +180,12 @@ class TestVxlanVtepVni < CiscoTestCase
178
180
 
179
181
  def test_peer_list
180
182
  vni = VxlanVtepVni.new('nve1', '6000')
181
- if validate_property_excluded?('vxlan_vtep_vni', 'ingress_replication')
183
+ if validate_property_excluded?('vxlan_vtep_vni', 'peer_list')
182
184
  assert_raises(Cisco::UnsupportedError) { vni.peer_list = ['1.1.1.1'] }
183
185
  return
184
186
  end
185
187
 
188
+ skip_incompat_version?('vxlan_vtep_vni', 'peer_list')
186
189
  peer_list = ['1.1.1.1', '2.2.2.2', '3.3.3.3', '4.4.4.4']
187
190
 
188
191
  # Test: all peers when current is empty
@@ -246,6 +249,7 @@ class TestVxlanVtepVni < CiscoTestCase
246
249
  return
247
250
  end
248
251
 
252
+ skip_incompat_version?('vxlan_vtep_vni', 'suppress_uuc')
249
253
  # Test: Check suppress_uuc is not configured.
250
254
  refute(vni.suppress_uuc, 'suppress_uuc should be disabled')
251
255
 
data/tests/test_yum.rb CHANGED
@@ -37,7 +37,6 @@ class TestYum < CiscoTestCase
37
37
  # Image Version before gsub: 7.0(3)I3(1)
38
38
  # Image Version after gsub: 7_0_3_I3_1_
39
39
  @@pv = Platform.image_version.gsub(/[.()]/, '_')[/\S+/]
40
- info "Image version detected: #{Platform.image_version}"
41
40
  skip("No pkginfo filename found for image version #{@@pv}") if
42
41
  pkginfo[@@pv].nil?
43
42
 
@@ -57,26 +56,6 @@ class TestYum < CiscoTestCase
57
56
  return unless @@run_setup
58
57
 
59
58
  select_pkg
60
- s = @device.cmd("show file bootflash:#{@@pkg_filename} cksum")
61
- if s[/No such file/]
62
- @@skip = true # rubocop:disable Style/ClassVars
63
- else
64
- # add pkg to the repo
65
- # normally this could be accomplished by first installing via full path
66
- # but that would make these tests order dependent
67
-
68
- # Remnants of the package my still exist from a previous install attempt.
69
- info 'Executing test setup... Please be patient, this will take a while.'
70
- steps = ["install deactivate #{@@pkg}",
71
- "install remove #{@@pkg} forced",
72
- "install add bootflash:#{@@pkg_filename}"]
73
- steps.each do |step|
74
- info "Executing setup step: #{step}..."
75
- s = @device.cmd(step)
76
- sleep 20
77
- debug "Step Complete.\n\n#{s}\n"
78
- end
79
- end
80
59
  @@run_setup = false # rubocop:disable Style/ClassVars
81
60
  end
82
61
 
@@ -85,29 +64,27 @@ class TestYum < CiscoTestCase
85
64
  'this file can be found in the cisco_node_utils/tests directory' if @@skip
86
65
  end
87
66
 
67
+ def older_releases?
68
+ return true if Utils.image_version?(/I2|I3/)
69
+ false
70
+ end
71
+
88
72
  def test_install_query_remove
89
73
  skip?
90
- if @device.cmd("show install package | include #{@@pkg}")[/@patching/]
91
- @device.cmd("install deactivate #{@@pkg}")
92
- node.cache_flush
93
- sleep 20
94
- end
95
-
74
+ skip if older_releases?
96
75
  # On dublin and later images, must specify the full rpm name.
97
76
  package = @@pv[/7_0_3_I2_1_/] ? @@pkg : @@pkg_filename
98
77
 
99
78
  # INSTALL
100
79
  # Specify "management" vrf for install
101
80
  Yum.install(package, 'management')
102
- sleep 20
103
81
  assert(Yum.query(@@pkg), "failed to find installed package #{@@pkg}")
104
82
 
105
83
  # QUERY INSTALLED
106
84
  assert_equal(@@pkg_ver, Yum.query(@@pkg), @@incompatible_rpm_msg)
107
85
 
108
86
  # REMOVE
109
- Yum.remove(@@pkg)
110
- sleep 20
87
+ Yum.remove(Yum.pkg_name(@@pkg_filename))
111
88
 
112
89
  # QUERY REMOVED
113
90
  assert_nil(Yum.query(@@pkg))
@@ -18,6 +18,11 @@
18
18
  name: 'nxos.sample-n9k_EOR'
19
19
  version: '1.0.0-7.0.3.I2.5'
20
20
 
21
+ 7_0_3_I3_1_:
22
+ filename: 'nxos.sample-n9k_EOR-1.0.0-7.0.3.I3.1.lib32_n9000.rpm'
23
+ name: 'nxos.sample-n9k_EOR'
24
+ version: '1.0.0-7.0.3.I3.1'
25
+
21
26
  7_0_3_I4_1_:
22
27
  filename: 'nxos.sample-n9k_EOR-1.0.0-7.0.3.I4.1.lib32_n9000.rpm'
23
28
  name: 'nxos.sample-n9k_EOR'
@@ -33,6 +38,11 @@
33
38
  name: 'nxos.sample-n9k_EOR'
34
39
  version: '1.0.0-7.0.3.I4.5'
35
40
 
41
+ 7_0_3_I4_6_:
42
+ filename: 'nxos.sample-n9k_EOR-1.0.0-7.0.3.I4.6.lib32_n9000.rpm'
43
+ name: 'nxos.sample-n9k_EOR'
44
+ version: '1.0.0-7.0.3.I4.6'
45
+
36
46
  7_0_3_I5_1_:
37
47
  filename: 'nxos.sample-n9k_ALL-1.0.0-7.0.3.I5.1.lib32_n9000.rpm'
38
48
  name: 'nxos.sample-n9k_ALL'
@@ -43,6 +53,16 @@
43
53
  name: 'nxos.sample-n9k_ALL'
44
54
  version: '1.0.0-7.0.3.I5.2'
45
55
 
56
+ 7_0_3_I5_3_:
57
+ filename: 'nxos.sample-n9k_ALL-1.0.0-7.0.3.I5.3.lib32_n9000.rpm'
58
+ name: 'nxos.sample-n9k_ALL'
59
+ version: '1.0.0-7.0.3.I5.3'
60
+
61
+ 7_0_3_I6_1_:
62
+ filename: 'nxos.sample-n9k_ALL-1.0.0-7.0.3.I6.1.lib32_n9000.rpm'
63
+ name: 'nxos.sample-n9k_ALL'
64
+ version: '1.0.0-7.0.3.I6.1'
65
+
46
66
  7_0_3_F1_1_:
47
67
  filename: 'nxos.sample-n8k_EOR-1.0.0-7.0.3.F1.1.lib32_nxos.rpm'
48
68
  name: 'nxos.sample-n8k_EOR'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cisco_node_utils
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.6.0
4
+ version: 1.7.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Gries
@@ -11,10 +11,11 @@ authors:
11
11
  - Rich Wellum
12
12
  - Mike Wiebe
13
13
  - Jie Yang
14
+ - Sai Chintalapudi
14
15
  autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
- date: 2017-03-14 00:00:00.000000000 Z
18
+ date: 2017-05-31 00:00:00.000000000 Z
18
19
  dependencies:
19
20
  - !ruby/object:Gem::Dependency
20
21
  name: bundler
@@ -174,6 +175,7 @@ files:
174
175
  - lib/cisco_node_utils/bfd_global.rb
175
176
  - lib/cisco_node_utils/bgp.rb
176
177
  - lib/cisco_node_utils/bgp_af.rb
178
+ - lib/cisco_node_utils/bgp_af_aggr_addr.rb
177
179
  - lib/cisco_node_utils/bgp_neighbor.rb
178
180
  - lib/cisco_node_utils/bgp_neighbor_af.rb
179
181
  - lib/cisco_node_utils/bridge_domain.rb
@@ -198,6 +200,7 @@ files:
198
200
  - lib/cisco_node_utils/cmd_ref/bfd_global.yaml
199
201
  - lib/cisco_node_utils/cmd_ref/bgp.yaml
200
202
  - lib/cisco_node_utils/cmd_ref/bgp_af.yaml
203
+ - lib/cisco_node_utils/cmd_ref/bgp_af_aa.yaml
201
204
  - lib/cisco_node_utils/cmd_ref/bgp_neighbor.yaml
202
205
  - lib/cisco_node_utils/cmd_ref/bgp_neighbor_af.yaml
203
206
  - lib/cisco_node_utils/cmd_ref/bridge_domain.yaml
@@ -221,6 +224,7 @@ files:
221
224
  - lib/cisco_node_utils/cmd_ref/itd_device_group.yaml
222
225
  - lib/cisco_node_utils/cmd_ref/itd_service.yaml
223
226
  - lib/cisco_node_utils/cmd_ref/memory.yaml
227
+ - lib/cisco_node_utils/cmd_ref/ntp_auth_key.yaml
224
228
  - lib/cisco_node_utils/cmd_ref/ntp_config.yaml
225
229
  - lib/cisco_node_utils/cmd_ref/ntp_server.yaml
226
230
  - lib/cisco_node_utils/cmd_ref/ospf.yaml
@@ -241,6 +245,7 @@ files:
241
245
  - lib/cisco_node_utils/cmd_ref/snmp_server.yaml
242
246
  - lib/cisco_node_utils/cmd_ref/snmp_user.yaml
243
247
  - lib/cisco_node_utils/cmd_ref/snmpnotification.yaml
248
+ - lib/cisco_node_utils/cmd_ref/span_session.yaml
244
249
  - lib/cisco_node_utils/cmd_ref/stp_global.yaml
245
250
  - lib/cisco_node_utils/cmd_ref/syslog_server.yaml
246
251
  - lib/cisco_node_utils/cmd_ref/syslog_settings.yaml
@@ -289,6 +294,7 @@ files:
289
294
  - lib/cisco_node_utils/name_server.rb
290
295
  - lib/cisco_node_utils/node.rb
291
296
  - lib/cisco_node_utils/node_util.rb
297
+ - lib/cisco_node_utils/ntp_auth_key.rb
292
298
  - lib/cisco_node_utils/ntp_config.rb
293
299
  - lib/cisco_node_utils/ntp_server.rb
294
300
  - lib/cisco_node_utils/overlay_global.rb
@@ -311,6 +317,7 @@ files:
311
317
  - lib/cisco_node_utils/snmpnotification.rb
312
318
  - lib/cisco_node_utils/snmpserver.rb
313
319
  - lib/cisco_node_utils/snmpuser.rb
320
+ - lib/cisco_node_utils/span_session.rb
314
321
  - lib/cisco_node_utils/stp_global.rb
315
322
  - lib/cisco_node_utils/syslog_server.rb
316
323
  - lib/cisco_node_utils/syslog_settings.rb
@@ -363,6 +370,7 @@ files:
363
370
  - tests/test_acl.rb
364
371
  - tests/test_bfd_global.rb
365
372
  - tests/test_bgp_af.rb
373
+ - tests/test_bgp_af_aa.rb
366
374
  - tests/test_bgp_neighbor.rb
367
375
  - tests/test_bgp_neighbor_af.rb
368
376
  - tests/test_bridge_domain.rb
@@ -400,6 +408,7 @@ files:
400
408
  - tests/test_node.rb
401
409
  - tests/test_node_ext.rb
402
410
  - tests/test_node_util.rb
411
+ - tests/test_ntp_auth_key.rb
403
412
  - tests/test_ntp_config.rb
404
413
  - tests/test_ntp_server.rb
405
414
  - tests/test_nxapi.rb
@@ -424,6 +433,7 @@ files:
424
433
  - tests/test_snmpnotification.rb
425
434
  - tests/test_snmpserver.rb
426
435
  - tests/test_snmpuser.rb
436
+ - tests/test_span_session.rb
427
437
  - tests/test_stp_global.rb
428
438
  - tests/test_syslog_server.rb
429
439
  - tests/test_syslog_settings.rb
@@ -465,7 +475,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
465
475
  version: 2.1.0
466
476
  requirements: []
467
477
  rubyforge_project:
468
- rubygems_version: 2.4.6
478
+ rubygems_version: 2.2.2
469
479
  signing_key:
470
480
  specification_version: 4
471
481
  summary: Utilities for management of Cisco network nodes