cisco_node_utils 1.9.0 → 1.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +34 -0
  3. data/README.md +14 -0
  4. data/ext/mkrf_conf.rb +1 -1
  5. data/lib/cisco_node_utils/ace.rb +142 -7
  6. data/lib/cisco_node_utils/banner.rb +63 -0
  7. data/lib/cisco_node_utils/bridge_domain.rb +1 -1
  8. data/lib/cisco_node_utils/cisco_cmn_utils.rb +1 -1
  9. data/lib/cisco_node_utils/client/utils.rb +20 -10
  10. data/lib/cisco_node_utils/cmd_ref/acl.yaml +1 -1
  11. data/lib/cisco_node_utils/cmd_ref/banner.yaml +7 -0
  12. data/lib/cisco_node_utils/cmd_ref/fabricpath.yaml +2 -2
  13. data/lib/cisco_node_utils/cmd_ref/hostname.yaml +8 -0
  14. data/lib/cisco_node_utils/cmd_ref/interface.yaml +20 -12
  15. data/lib/cisco_node_utils/cmd_ref/interface_hsrp_group.yaml +3 -3
  16. data/lib/cisco_node_utils/cmd_ref/ip_multicast.yaml +6 -2
  17. data/lib/cisco_node_utils/cmd_ref/snmp_server.yaml +4 -1
  18. data/lib/cisco_node_utils/cmd_ref/syslog_facility.yaml +10 -0
  19. data/lib/cisco_node_utils/cmd_ref/syslog_server.yaml +3 -3
  20. data/lib/cisco_node_utils/cmd_ref/syslog_settings.yaml +16 -0
  21. data/lib/cisco_node_utils/cmd_ref/tacacs_server_host.yaml +2 -2
  22. data/lib/cisco_node_utils/environment.rb +8 -1
  23. data/lib/cisco_node_utils/hostname.rb +62 -0
  24. data/lib/cisco_node_utils/interface.rb +59 -2
  25. data/lib/cisco_node_utils/interface_DEPRECATED.rb +5 -0
  26. data/lib/cisco_node_utils/interface_hsrp_group.rb +17 -6
  27. data/lib/cisco_node_utils/ip_multicast.rb +13 -9
  28. data/lib/cisco_node_utils/node.rb +4 -1
  29. data/lib/cisco_node_utils/syslog_facility.rb +64 -0
  30. data/lib/cisco_node_utils/syslog_server.rb +18 -13
  31. data/lib/cisco_node_utils/syslog_settings.rb +43 -1
  32. data/lib/cisco_node_utils/version.rb +1 -1
  33. data/lib/cisco_node_utils/vlan.rb +1 -1
  34. data/lib/cisco_node_utils/vxlan_vtep_vni.rb +21 -8
  35. data/spec/environment_spec.rb +107 -0
  36. data/tests/ciscotest.rb +8 -1
  37. data/tests/test_ace.rb +60 -3
  38. data/tests/test_banner.rb +85 -0
  39. data/tests/test_bgp_af.rb +1 -1
  40. data/tests/test_hostname.rb +64 -0
  41. data/tests/test_interface.rb +22 -1
  42. data/tests/test_interface_hsrp_group.rb +12 -24
  43. data/tests/test_ip_multicast.rb +32 -21
  44. data/tests/test_nxapi.rb +8 -4
  45. data/tests/test_syslog_facility.rb +80 -0
  46. data/tests/test_syslog_server.rb +3 -2
  47. data/tests/test_syslog_settings.rb +16 -1
  48. data/tests/yum_package.yaml +5 -0
  49. metadata +12 -3
@@ -34,11 +34,19 @@ class TestNxapi < TestCase
34
34
 
35
35
  def setup
36
36
  super
37
+ @device.cmd('configure terminal')
38
+ @device.cmd('feature nxapi')
39
+ @device.cmd('nxapi http port 80')
40
+ @device.cmd('end')
37
41
  @product_id = Cisco::Node.new.product_id if @product_id.nil?
38
42
  cleanup
39
43
  end
40
44
 
41
45
  def teardown
46
+ @device.cmd('configure terminal')
47
+ @device.cmd('feature nxapi')
48
+ @device.cmd('nxapi http port 80')
49
+ @device.cmd('end')
42
50
  cleanup
43
51
  super
44
52
  end
@@ -179,10 +187,6 @@ class TestNxapi < TestCase
179
187
  assert_raises Cisco::ConnectionRefused do
180
188
  client.set(values: 'interface loopback41')
181
189
  end
182
- ensure
183
- @device.cmd('configure terminal')
184
- @device.cmd('feature nxapi')
185
- @device.cmd('end')
186
190
  end
187
191
 
188
192
  def test_unauthorized
@@ -0,0 +1,80 @@
1
+ #
2
+ # Minitest for SyslogFacility class
3
+ #
4
+ # Copyright (c) 2014-2018 Cisco and/or its affiliates.
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+
18
+ require_relative 'ciscotest'
19
+ require_relative '../lib/cisco_node_utils/syslog_facility'
20
+
21
+ # TestSyslogFacility - Minitest for SyslogFacility node utility.
22
+ class TestSyslogFacility < CiscoTestCase
23
+ def setup
24
+ # setup runs at the beginning of each test
25
+ super
26
+ no_syslogfacility
27
+ end
28
+
29
+ def teardown
30
+ # teardown runs at the end of each test
31
+ no_syslogfacility
32
+ super
33
+ end
34
+
35
+ def no_syslogfacility
36
+ # Turn the feature off for a clean test.
37
+ config('no logging level aaa 6',
38
+ 'no logging level ip igmp 6',
39
+ 'no logging level routing ipv4 multicast 7')
40
+ end
41
+
42
+ # TESTS
43
+
44
+ def test_create_destroy
45
+ id = 'aaa'
46
+ refute_includes(Cisco::SyslogFacility.facilities, id)
47
+
48
+ facility = Cisco::SyslogFacility.new({ 'facility' => id, 'level' => 6 }, true)
49
+ assert_includes(Cisco::SyslogFacility.facilities, id)
50
+ assert_equal(Cisco::SyslogFacility.facilities[id], facility)
51
+ assert_equal(id, Cisco::SyslogFacility.facilities[id].facility)
52
+ assert_equal(6, Cisco::SyslogFacility.facilities[id].level)
53
+
54
+ facility.destroy
55
+ refute_includes(Cisco::SyslogFacility.facilities, id)
56
+ end
57
+
58
+ def test_create_destroy_extended
59
+ id = 'ip igmp'
60
+ id2 = 'routing ipv4 multicast'
61
+ refute_includes(Cisco::SyslogFacility.facilities, id)
62
+ refute_includes(Cisco::SyslogFacility.facilities, id2)
63
+
64
+ facility = Cisco::SyslogFacility.new({ 'facility' => id, 'level' => 6 }, true)
65
+ facility2 = Cisco::SyslogFacility.new({ 'facility' => id2, 'level' => 7 }, true)
66
+ assert_includes(Cisco::SyslogFacility.facilities, id)
67
+ assert_equal(Cisco::SyslogFacility.facilities[id], facility)
68
+ assert_equal(id, Cisco::SyslogFacility.facilities[id].facility)
69
+ assert_equal(6, Cisco::SyslogFacility.facilities[id].level)
70
+ assert_includes(Cisco::SyslogFacility.facilities, id2)
71
+ assert_equal(Cisco::SyslogFacility.facilities[id2], facility2)
72
+ assert_equal(id2, Cisco::SyslogFacility.facilities[id2].facility)
73
+ assert_equal(7, Cisco::SyslogFacility.facilities[id2].level)
74
+
75
+ facility.destroy
76
+ facility2.destroy
77
+ refute_includes(Cisco::SyslogFacility.facilities, id)
78
+ refute_includes(Cisco::SyslogFacility.facilities, id2)
79
+ end
80
+ end
@@ -1,7 +1,7 @@
1
1
  #
2
2
  # Minitest for SyslogServer class
3
3
  #
4
- # Copyright (c) 2014-2016 Cisco and/or its affiliates.
4
+ # Copyright (c) 2014-2018 Cisco and/or its affiliates.
5
5
  #
6
6
  # Licensed under the Apache License, Version 2.0 (the "License");
7
7
  # you may not use this file except in compliance with the License.
@@ -101,7 +101,7 @@ class TestSyslogServer < CiscoTestCase
101
101
  end
102
102
 
103
103
  id = '1.2.3.4'
104
- options = { 'name' => id, 'level' => '4', 'port' => '2154', 'vrf' => 'red' }
104
+ options = { 'name' => id, 'level' => '4', 'port' => '2154', 'vrf' => 'red', 'facility' => 'local5' }
105
105
 
106
106
  refute_includes(Cisco::SyslogServer.syslogservers, id)
107
107
 
@@ -111,6 +111,7 @@ class TestSyslogServer < CiscoTestCase
111
111
  assert_equal('4', Cisco::SyslogServer.syslogservers[id].level)
112
112
  assert_equal('2154', Cisco::SyslogServer.syslogservers[id].port)
113
113
  assert_equal('red', Cisco::SyslogServer.syslogservers[id].vrf)
114
+ assert_equal('local5', Cisco::SyslogServer.syslogservers[id].facility)
114
115
 
115
116
  server.destroy
116
117
  refute_includes(Cisco::SyslogServer.syslogservers, id)
@@ -39,7 +39,8 @@ class TestSyslogSettings < CiscoTestCase
39
39
  config('no logging timestamp seconds',
40
40
  'logging console 2',
41
41
  'logging monitor 5',
42
- 'no logging source-interface')
42
+ 'no logging source-interface',
43
+ 'no logging logfile')
43
44
  end
44
45
 
45
46
  # TESTS
@@ -105,4 +106,18 @@ class TestSyslogSettings < CiscoTestCase
105
106
  syslog_setting.source_interface = nil
106
107
  assert_nil(syslog_setting.source_interface)
107
108
  end
109
+
110
+ def test_logfile
111
+ syslog_setting = Cisco::SyslogSettings.new('default')
112
+
113
+ assert_equal('unset', syslog_setting.logfile_name)
114
+ syslog_setting.send('logfile_name=', 'testlog', 5, 'size 4097')
115
+ assert_equal('testlog', syslog_setting.logfile_name)
116
+ assert_equal('5', syslog_setting.logfile_severity_level)
117
+ assert_equal('4097', syslog_setting.logfile_size)
118
+ syslog_setting.send('logfile_name=', nil, nil, nil)
119
+ assert_equal('unset', syslog_setting.logfile_name)
120
+ assert_nil(syslog_setting.logfile_severity_level)
121
+ assert_nil(syslog_setting.logfile_size)
122
+ end
108
123
  end
@@ -78,6 +78,11 @@
78
78
  name: 'nxos.sample-n9k_ALL'
79
79
  version: '1.0.0-7.0.3.I7.3'
80
80
 
81
+ 7_0_3_I7_4_:
82
+ filename: 'nxos.sample-n9k_ALL-1.0.0-7.0.3.I7.4.lib32_n9000.rpm'
83
+ name: 'nxos.sample-n9k_ALL'
84
+ version: '1.0.0-7.0.3.I7.4'
85
+
81
86
  7_0_3_F1_1_:
82
87
  filename: 'nxos.sample-n8k_EOR-1.0.0-7.0.3.F1.1.lib32_nxos.rpm'
83
88
  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.9.0
4
+ version: 1.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rob Gries
@@ -15,7 +15,7 @@ authors:
15
15
  autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
- date: 2018-04-19 00:00:00.000000000 Z
18
+ date: 2018-09-19 00:00:00.000000000 Z
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
21
  name: bundler
@@ -186,6 +186,7 @@ files:
186
186
  - lib/cisco_node_utils/aaa_authorization_service.rb
187
187
  - lib/cisco_node_utils/ace.rb
188
188
  - lib/cisco_node_utils/acl.rb
189
+ - lib/cisco_node_utils/banner.rb
189
190
  - lib/cisco_node_utils/bfd_global.rb
190
191
  - lib/cisco_node_utils/bgp.rb
191
192
  - lib/cisco_node_utils/bgp_af.rb
@@ -211,6 +212,7 @@ files:
211
212
  - lib/cisco_node_utils/cmd_ref/aaa_authentication_login.yaml
212
213
  - lib/cisco_node_utils/cmd_ref/aaa_authorization_service.yaml
213
214
  - lib/cisco_node_utils/cmd_ref/acl.yaml
215
+ - lib/cisco_node_utils/cmd_ref/banner.yaml
214
216
  - lib/cisco_node_utils/cmd_ref/bfd_global.yaml
215
217
  - lib/cisco_node_utils/cmd_ref/bgp.yaml
216
218
  - lib/cisco_node_utils/cmd_ref/bgp_af.yaml
@@ -229,6 +231,7 @@ files:
229
231
  - lib/cisco_node_utils/cmd_ref/fabricpath.yaml
230
232
  - lib/cisco_node_utils/cmd_ref/fabricpath_topology.yaml
231
233
  - lib/cisco_node_utils/cmd_ref/feature.yaml
234
+ - lib/cisco_node_utils/cmd_ref/hostname.yaml
232
235
  - lib/cisco_node_utils/cmd_ref/hsrp_global.yaml
233
236
  - lib/cisco_node_utils/cmd_ref/images.yaml
234
237
  - lib/cisco_node_utils/cmd_ref/interface.yaml
@@ -267,6 +270,7 @@ files:
267
270
  - lib/cisco_node_utils/cmd_ref/snmpnotification.yaml
268
271
  - lib/cisco_node_utils/cmd_ref/span_session.yaml
269
272
  - lib/cisco_node_utils/cmd_ref/stp_global.yaml
273
+ - lib/cisco_node_utils/cmd_ref/syslog_facility.yaml
270
274
  - lib/cisco_node_utils/cmd_ref/syslog_server.yaml
271
275
  - lib/cisco_node_utils/cmd_ref/syslog_settings.yaml
272
276
  - lib/cisco_node_utils/cmd_ref/system.yaml
@@ -302,6 +306,7 @@ files:
302
306
  - lib/cisco_node_utils/fabricpath_global.rb
303
307
  - lib/cisco_node_utils/fabricpath_topology.rb
304
308
  - lib/cisco_node_utils/feature.rb
309
+ - lib/cisco_node_utils/hostname.rb
305
310
  - lib/cisco_node_utils/hsrp_global.rb
306
311
  - lib/cisco_node_utils/interface.rb
307
312
  - lib/cisco_node_utils/interface_DEPRECATED.rb
@@ -346,6 +351,7 @@ files:
346
351
  - lib/cisco_node_utils/snmpuser.rb
347
352
  - lib/cisco_node_utils/span_session.rb
348
353
  - lib/cisco_node_utils/stp_global.rb
354
+ - lib/cisco_node_utils/syslog_facility.rb
349
355
  - lib/cisco_node_utils/syslog_server.rb
350
356
  - lib/cisco_node_utils/syslog_settings.rb
351
357
  - lib/cisco_node_utils/tacacs_global.rb
@@ -395,6 +401,7 @@ files:
395
401
  - tests/test_aaa_authorization_service.rb
396
402
  - tests/test_ace.rb
397
403
  - tests/test_acl.rb
404
+ - tests/test_banner.rb
398
405
  - tests/test_bfd_global.rb
399
406
  - tests/test_bgp_af.rb
400
407
  - tests/test_bgp_af_aa.rb
@@ -418,6 +425,7 @@ files:
418
425
  - tests/test_fabricpath_topology.rb
419
426
  - tests/test_feature.rb
420
427
  - tests/test_grpc.rb
428
+ - tests/test_hostname.rb
421
429
  - tests/test_hsrp_global.rb
422
430
  - tests/test_interface.rb
423
431
  - tests/test_interface_bdi.rb
@@ -468,6 +476,7 @@ files:
468
476
  - tests/test_snmpuser.rb
469
477
  - tests/test_span_session.rb
470
478
  - tests/test_stp_global.rb
479
+ - tests/test_syslog_facility.rb
471
480
  - tests/test_syslog_server.rb
472
481
  - tests/test_syslog_settings.rb
473
482
  - tests/test_tacacs_global.rb
@@ -508,7 +517,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
508
517
  version: 2.1.0
509
518
  requirements: []
510
519
  rubyforge_project:
511
- rubygems_version: 2.5.2.1
520
+ rubygems_version: 2.2.2
512
521
  signing_key:
513
522
  specification_version: 4
514
523
  summary: Utilities for management of Cisco network nodes