oxidized 0.25.1 → 0.26.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/.rubocop.yml +30 -9
- data/.rubocop_todo.yml +16 -637
- data/.travis.yml +2 -3
- data/CHANGELOG.md +14 -0
- data/Dockerfile +7 -5
- data/README.md +18 -14
- data/Rakefile +2 -2
- data/bin/console +1 -1
- data/bin/oxidized +2 -2
- data/docs/Configuration.md +6 -0
- data/docs/Model-Notes/README.md +1 -0
- data/docs/Model-Notes/SmartAX-Huawei.md +35 -0
- data/docs/Supported-OS-Types.md +12 -0
- data/extra/nagios_check_failing_nodes.rb +1 -1
- data/extra/rest_client.rb +6 -8
- data/extra/syslog.rb +33 -33
- data/lib/oxidized/cli.rb +25 -26
- data/lib/oxidized/config.rb +9 -9
- data/lib/oxidized/config/vars.rb +3 -7
- data/lib/oxidized/core.rb +4 -7
- data/lib/oxidized/hook.rb +16 -17
- data/lib/oxidized/hook/awssns.rb +4 -4
- data/lib/oxidized/hook/exec.rb +16 -20
- data/lib/oxidized/hook/githubrepo.rb +8 -14
- data/lib/oxidized/hook/noophook.rb +1 -1
- data/lib/oxidized/hook/xmppdiff.rb +1 -1
- data/lib/oxidized/input/cli.rb +12 -12
- data/lib/oxidized/input/ftp.rb +8 -8
- data/lib/oxidized/input/http.rb +37 -14
- data/lib/oxidized/input/input.rb +6 -6
- data/lib/oxidized/input/ssh.rb +31 -31
- data/lib/oxidized/input/telnet.rb +24 -24
- data/lib/oxidized/input/tftp.rb +9 -10
- data/lib/oxidized/jobs.rb +7 -7
- data/lib/oxidized/manager.rb +13 -13
- data/lib/oxidized/model/acos.rb +2 -2
- data/lib/oxidized/model/aireos.rb +3 -3
- data/lib/oxidized/model/aos7.rb +1 -1
- data/lib/oxidized/model/aosw.rb +12 -14
- data/lib/oxidized/model/apc_aos.rb +1 -1
- data/lib/oxidized/model/aricentiss.rb +6 -8
- data/lib/oxidized/model/asa.rb +1 -1
- data/lib/oxidized/model/audiocodesmp.rb +28 -0
- data/lib/oxidized/model/awplus.rb +9 -9
- data/lib/oxidized/model/boss.rb +1 -1
- data/lib/oxidized/model/ciscosmb.rb +1 -1
- data/lib/oxidized/model/ciscovpn3k.rb +11 -0
- data/lib/oxidized/model/comware.rb +1 -1
- data/lib/oxidized/model/cumulus.rb +3 -1
- data/lib/oxidized/model/dellx.rb +5 -5
- data/lib/oxidized/model/edgeos.rb +1 -1
- data/lib/oxidized/model/edgeswitch.rb +1 -1
- data/lib/oxidized/model/fabricos.rb +1 -1
- data/lib/oxidized/model/fortios.rb +5 -5
- data/lib/oxidized/model/ftos.rb +1 -1
- data/lib/oxidized/model/gcombnps.rb +7 -7
- data/lib/oxidized/model/grandstream.rb +9 -0
- data/lib/oxidized/model/hatteras.rb +8 -8
- data/lib/oxidized/model/ios.rb +22 -40
- data/lib/oxidized/model/ironware.rb +1 -1
- data/lib/oxidized/model/junos.rb +1 -1
- data/lib/oxidized/model/mlnxos.rb +1 -1
- data/lib/oxidized/model/model.rb +32 -38
- data/lib/oxidized/model/netgearxs716.rb +23 -0
- data/lib/oxidized/model/netonix.rb +1 -1
- data/lib/oxidized/model/netscaler.rb +1 -1
- data/lib/oxidized/model/nos.rb +2 -2
- data/lib/oxidized/model/nxos.rb +1 -1
- data/lib/oxidized/model/openbsd.rb +3 -2
- data/lib/oxidized/model/outputs.rb +4 -4
- data/lib/oxidized/model/planet.rb +4 -4
- data/lib/oxidized/model/powerconnect.rb +8 -8
- data/lib/oxidized/model/procurve.rb +2 -1
- data/lib/oxidized/model/quantaos.rb +3 -3
- data/lib/oxidized/model/raisecom.rb +19 -0
- data/lib/oxidized/model/siklu.rb +1 -1
- data/lib/oxidized/model/slxos.rb +1 -1
- data/lib/oxidized/model/smartax.rb +25 -0
- data/lib/oxidized/model/sros.rb +4 -4
- data/lib/oxidized/model/tdre.rb +30 -0
- data/lib/oxidized/model/tmos.rb +3 -0
- data/lib/oxidized/model/trango.rb +17 -37
- data/lib/oxidized/model/voltaire.rb +1 -1
- data/lib/oxidized/model/voss.rb +1 -1
- data/lib/oxidized/model/vyatta.rb +1 -1
- data/lib/oxidized/model/xos.rb +1 -1
- data/lib/oxidized/model/zhoneolt.rb +1 -1
- data/lib/oxidized/node.rb +42 -46
- data/lib/oxidized/node/stats.rb +6 -6
- data/lib/oxidized/nodes.rb +42 -42
- data/lib/oxidized/output/file.rb +16 -20
- data/lib/oxidized/output/git.rb +68 -78
- data/lib/oxidized/output/gitcrypt.rb +77 -91
- data/lib/oxidized/output/http.rb +17 -19
- data/lib/oxidized/output/output.rb +1 -1
- data/lib/oxidized/source/csv.rb +3 -3
- data/lib/oxidized/source/http.rb +11 -14
- data/lib/oxidized/source/source.rb +3 -3
- data/lib/oxidized/source/sql.rb +16 -18
- data/lib/oxidized/string.rb +10 -10
- data/lib/oxidized/version.rb +4 -4
- data/lib/oxidized/worker.rb +15 -15
- data/oxidized.gemspec +6 -9
- metadata +32 -25
data/lib/oxidized/string.rb
CHANGED
|
@@ -4,33 +4,33 @@ module Oxidized
|
|
|
4
4
|
attr_accessor :type, :cmd, :name
|
|
5
5
|
|
|
6
6
|
# @return [Oxidized::String] copy of self with last line removed
|
|
7
|
-
def cut_tail
|
|
7
|
+
def cut_tail(lines = 1)
|
|
8
8
|
Oxidized::String.new each_line.to_a[0..-1 - lines].join
|
|
9
9
|
end
|
|
10
10
|
|
|
11
11
|
# @return [Oxidized::String] copy of self with first line removed
|
|
12
|
-
def cut_head
|
|
12
|
+
def cut_head(lines = 1)
|
|
13
13
|
Oxidized::String.new each_line.to_a[lines..-1].join
|
|
14
14
|
end
|
|
15
15
|
|
|
16
16
|
# @return [Oxidized::String] copy of self with first and last lines removed
|
|
17
|
-
def cut_both
|
|
17
|
+
def cut_both(head = 1, tail = 1)
|
|
18
18
|
Oxidized::String.new each_line.to_a[head..-1 - tail].join
|
|
19
19
|
end
|
|
20
20
|
|
|
21
21
|
# sets @cmd and @name unless @name is already set
|
|
22
|
-
def set_cmd
|
|
22
|
+
def set_cmd(command)
|
|
23
23
|
@cmd = command
|
|
24
24
|
@name ||= @cmd.to_s.strip.gsub(/\s+/, '_') # what to do when command is proc? #to_s seems ghetto
|
|
25
25
|
end
|
|
26
26
|
|
|
27
|
-
def initialize
|
|
27
|
+
def initialize(str = '')
|
|
28
28
|
super
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
29
|
+
return unless str.class == Oxidized::String
|
|
30
|
+
|
|
31
|
+
@cmd = str.cmd
|
|
32
|
+
@name = str.name
|
|
33
|
+
@type = str.type
|
|
34
34
|
end
|
|
35
35
|
end
|
|
36
36
|
end
|
data/lib/oxidized/version.rb
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
module Oxidized
|
|
2
|
-
VERSION = '0.
|
|
3
|
-
VERSION_FULL = '0.
|
|
2
|
+
VERSION = '0.26.0'.freeze
|
|
3
|
+
VERSION_FULL = '0.26.0'.freeze
|
|
4
4
|
def self.version_set
|
|
5
5
|
version_full = %x(git describe --tags).chop rescue ""
|
|
6
6
|
version = %x(git describe --tags --abbrev=0).chop rescue ""
|
|
@@ -12,8 +12,8 @@ module Oxidized
|
|
|
12
12
|
const_set(:VERSION, version)
|
|
13
13
|
const_set(:VERSION_FULL, version_full)
|
|
14
14
|
file = File.readlines(__FILE__)
|
|
15
|
-
file[1] = " VERSION = '%s'\n" % VERSION
|
|
16
|
-
file[2] = " VERSION_FULL = '%s'\n" % VERSION_FULL
|
|
15
|
+
file[1] = " VERSION = '%s'.freeze\n" % VERSION
|
|
16
|
+
file[2] = " VERSION_FULL = '%s'.freeze\n" % VERSION_FULL
|
|
17
17
|
File.write(__FILE__, file.join)
|
|
18
18
|
end
|
|
19
19
|
end
|
data/lib/oxidized/worker.rb
CHANGED
|
@@ -2,7 +2,7 @@ module Oxidized
|
|
|
2
2
|
require 'oxidized/job'
|
|
3
3
|
require 'oxidized/jobs'
|
|
4
4
|
class Worker
|
|
5
|
-
def initialize
|
|
5
|
+
def initialize(nodes)
|
|
6
6
|
@jobs_done = 0
|
|
7
7
|
@nodes = nodes
|
|
8
8
|
@jobs = Jobs.new(Oxidized.config.threads, Oxidized.config.interval, @nodes)
|
|
@@ -12,7 +12,7 @@ module Oxidized
|
|
|
12
12
|
|
|
13
13
|
def work
|
|
14
14
|
ended = []
|
|
15
|
-
@jobs.delete_if { |job| ended << job
|
|
15
|
+
@jobs.delete_if { |job| ended << job unless job.alive? }
|
|
16
16
|
ended.each { |job| process job }
|
|
17
17
|
@jobs.work
|
|
18
18
|
|
|
@@ -22,7 +22,7 @@ module Oxidized
|
|
|
22
22
|
nextnode = @nodes.first
|
|
23
23
|
unless nextnode.last.nil?
|
|
24
24
|
# Set unobtainable value for 'last' if interval checking is disabled
|
|
25
|
-
last = Oxidized.config.interval
|
|
25
|
+
last = Oxidized.config.interval.zero? ? Time.now.utc + 10 : nextnode.last.end
|
|
26
26
|
break if last + Oxidized.config.interval > Time.now.utc
|
|
27
27
|
end
|
|
28
28
|
# shift nodes and get the next node
|
|
@@ -33,11 +33,11 @@ module Oxidized
|
|
|
33
33
|
Oxidized.logger.debug "lib/oxidized/worker.rb: Added #{node.group}/#{node.name} to the job queue"
|
|
34
34
|
end
|
|
35
35
|
|
|
36
|
-
run_done_hook if
|
|
36
|
+
run_done_hook if cycle_finished?
|
|
37
37
|
Oxidized.logger.debug("lib/oxidized/worker.rb: #{@jobs.size} jobs running in parallel") unless @jobs.empty?
|
|
38
38
|
end
|
|
39
39
|
|
|
40
|
-
def process
|
|
40
|
+
def process(job)
|
|
41
41
|
node = job.node
|
|
42
42
|
node.last = job
|
|
43
43
|
node.stats.add job
|
|
@@ -54,10 +54,10 @@ module Oxidized
|
|
|
54
54
|
|
|
55
55
|
private
|
|
56
56
|
|
|
57
|
-
def process_success
|
|
57
|
+
def process_success(node, job)
|
|
58
58
|
@jobs_done += 1 # needed for :nodes_done hook
|
|
59
59
|
Oxidized.Hooks.handle :node_success, node: node,
|
|
60
|
-
job:
|
|
60
|
+
job: job
|
|
61
61
|
msg = "update #{node.group}/#{node.name}"
|
|
62
62
|
msg += " from #{node.from}" if node.from
|
|
63
63
|
msg += " with message '#{node.msg}'" if node.msg
|
|
@@ -66,14 +66,14 @@ module Oxidized
|
|
|
66
66
|
msg: msg, email: node.email, user: node.user, group: node.group
|
|
67
67
|
node.modified
|
|
68
68
|
Oxidized.logger.info "Configuration updated for #{node.group}/#{node.name}"
|
|
69
|
-
Oxidized.Hooks.handle :post_store, node:
|
|
70
|
-
job:
|
|
69
|
+
Oxidized.Hooks.handle :post_store, node: node,
|
|
70
|
+
job: job,
|
|
71
71
|
commitref: output.commitref
|
|
72
72
|
end
|
|
73
73
|
node.reset
|
|
74
74
|
end
|
|
75
75
|
|
|
76
|
-
def process_failure
|
|
76
|
+
def process_failure(node, job)
|
|
77
77
|
msg = "#{node.group}/#{node.name} status #{job.status}"
|
|
78
78
|
if node.retry < Oxidized.config.retries
|
|
79
79
|
node.retry += 1
|
|
@@ -87,24 +87,24 @@ module Oxidized
|
|
|
87
87
|
@jobs_done += 1
|
|
88
88
|
msg += ", retries exhausted, giving up"
|
|
89
89
|
node.retry = 0
|
|
90
|
-
Oxidized.Hooks.handle :node_fail, :
|
|
91
|
-
:job
|
|
90
|
+
Oxidized.Hooks.handle :node_fail, node: node,
|
|
91
|
+
job: job
|
|
92
92
|
end
|
|
93
93
|
Oxidized.logger.warn msg
|
|
94
94
|
end
|
|
95
95
|
|
|
96
|
-
def
|
|
96
|
+
def cycle_finished?
|
|
97
97
|
if @jobs_done > @nodes.count
|
|
98
98
|
true
|
|
99
99
|
else
|
|
100
|
-
@jobs_done
|
|
100
|
+
@jobs_done.positive? && (@jobs_done % @nodes.count).zero?
|
|
101
101
|
end
|
|
102
102
|
end
|
|
103
103
|
|
|
104
104
|
def run_done_hook
|
|
105
105
|
Oxidized.logger.debug "lib/oxidized/worker.rb: Running :nodes_done hook"
|
|
106
106
|
Oxidized.Hooks.handle :nodes_done
|
|
107
|
-
rescue => e
|
|
107
|
+
rescue StandardError => e
|
|
108
108
|
# swallow the hook erros and continue as normal
|
|
109
109
|
Oxidized.logger.error "lib/oxidized/worker.rb: #{e.message}"
|
|
110
110
|
ensure
|
data/oxidized.gemspec
CHANGED
|
@@ -17,23 +17,20 @@ Gem::Specification.new do |s|
|
|
|
17
17
|
s.executables = %w[oxidized]
|
|
18
18
|
s.require_path = 'lib'
|
|
19
19
|
|
|
20
|
-
s.required_ruby_version = '>= 2.
|
|
20
|
+
s.required_ruby_version = '>= 2.3'
|
|
21
21
|
s.add_runtime_dependency 'asetus', '~> 0.1'
|
|
22
|
-
s.add_runtime_dependency 'net-ssh', '~>
|
|
22
|
+
s.add_runtime_dependency 'net-ssh', '~> 5'
|
|
23
23
|
s.add_runtime_dependency 'net-telnet', '~> 0.1.1'
|
|
24
24
|
s.add_runtime_dependency 'rugged', '~> 0.21', '>= 0.21.4'
|
|
25
25
|
s.add_runtime_dependency 'slop', '~> 3.5'
|
|
26
26
|
|
|
27
|
-
s.add_development_dependency '
|
|
28
|
-
if ENV['CI'] == 'true'
|
|
29
|
-
s.add_development_dependency 'codecov'
|
|
30
|
-
end
|
|
31
|
-
|
|
32
|
-
s.add_development_dependency 'bundler', '~> 1.10'
|
|
27
|
+
s.add_development_dependency 'bundler', '~> 2.0'
|
|
28
|
+
s.add_development_dependency 'codecov' if ENV['CI'] == 'true'
|
|
33
29
|
s.add_development_dependency 'git', '~> 1'
|
|
34
30
|
s.add_development_dependency 'minitest', '~> 5.8'
|
|
35
31
|
s.add_development_dependency 'mocha', '~> 1.1'
|
|
36
32
|
s.add_development_dependency 'pry', '~> 0'
|
|
37
33
|
s.add_development_dependency 'rake', '~> 10.0'
|
|
38
|
-
s.add_development_dependency 'rubocop', '~> 0.
|
|
34
|
+
s.add_development_dependency 'rubocop', '~> 0.65.0'
|
|
35
|
+
s.add_development_dependency 'simplecov'
|
|
39
36
|
end
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: oxidized
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.26.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Saku Ytti
|
|
@@ -10,7 +10,7 @@ authors:
|
|
|
10
10
|
autorequire:
|
|
11
11
|
bindir: bin
|
|
12
12
|
cert_chain: []
|
|
13
|
-
date:
|
|
13
|
+
date: 2019-03-04 00:00:00.000000000 Z
|
|
14
14
|
dependencies:
|
|
15
15
|
- !ruby/object:Gem::Dependency
|
|
16
16
|
name: asetus
|
|
@@ -32,14 +32,14 @@ dependencies:
|
|
|
32
32
|
requirements:
|
|
33
33
|
- - "~>"
|
|
34
34
|
- !ruby/object:Gem::Version
|
|
35
|
-
version:
|
|
35
|
+
version: '5'
|
|
36
36
|
type: :runtime
|
|
37
37
|
prerelease: false
|
|
38
38
|
version_requirements: !ruby/object:Gem::Requirement
|
|
39
39
|
requirements:
|
|
40
40
|
- - "~>"
|
|
41
41
|
- !ruby/object:Gem::Version
|
|
42
|
-
version:
|
|
42
|
+
version: '5'
|
|
43
43
|
- !ruby/object:Gem::Dependency
|
|
44
44
|
name: net-telnet
|
|
45
45
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -88,34 +88,20 @@ dependencies:
|
|
|
88
88
|
- - "~>"
|
|
89
89
|
- !ruby/object:Gem::Version
|
|
90
90
|
version: '3.5'
|
|
91
|
-
- !ruby/object:Gem::Dependency
|
|
92
|
-
name: simplecov
|
|
93
|
-
requirement: !ruby/object:Gem::Requirement
|
|
94
|
-
requirements:
|
|
95
|
-
- - ">="
|
|
96
|
-
- !ruby/object:Gem::Version
|
|
97
|
-
version: '0'
|
|
98
|
-
type: :development
|
|
99
|
-
prerelease: false
|
|
100
|
-
version_requirements: !ruby/object:Gem::Requirement
|
|
101
|
-
requirements:
|
|
102
|
-
- - ">="
|
|
103
|
-
- !ruby/object:Gem::Version
|
|
104
|
-
version: '0'
|
|
105
91
|
- !ruby/object:Gem::Dependency
|
|
106
92
|
name: bundler
|
|
107
93
|
requirement: !ruby/object:Gem::Requirement
|
|
108
94
|
requirements:
|
|
109
95
|
- - "~>"
|
|
110
96
|
- !ruby/object:Gem::Version
|
|
111
|
-
version: '
|
|
97
|
+
version: '2.0'
|
|
112
98
|
type: :development
|
|
113
99
|
prerelease: false
|
|
114
100
|
version_requirements: !ruby/object:Gem::Requirement
|
|
115
101
|
requirements:
|
|
116
102
|
- - "~>"
|
|
117
103
|
- !ruby/object:Gem::Version
|
|
118
|
-
version: '
|
|
104
|
+
version: '2.0'
|
|
119
105
|
- !ruby/object:Gem::Dependency
|
|
120
106
|
name: git
|
|
121
107
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -192,14 +178,28 @@ dependencies:
|
|
|
192
178
|
requirements:
|
|
193
179
|
- - "~>"
|
|
194
180
|
- !ruby/object:Gem::Version
|
|
195
|
-
version: 0.
|
|
181
|
+
version: 0.65.0
|
|
196
182
|
type: :development
|
|
197
183
|
prerelease: false
|
|
198
184
|
version_requirements: !ruby/object:Gem::Requirement
|
|
199
185
|
requirements:
|
|
200
186
|
- - "~>"
|
|
201
187
|
- !ruby/object:Gem::Version
|
|
202
|
-
version: 0.
|
|
188
|
+
version: 0.65.0
|
|
189
|
+
- !ruby/object:Gem::Dependency
|
|
190
|
+
name: simplecov
|
|
191
|
+
requirement: !ruby/object:Gem::Requirement
|
|
192
|
+
requirements:
|
|
193
|
+
- - ">="
|
|
194
|
+
- !ruby/object:Gem::Version
|
|
195
|
+
version: '0'
|
|
196
|
+
type: :development
|
|
197
|
+
prerelease: false
|
|
198
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
199
|
+
requirements:
|
|
200
|
+
- - ">="
|
|
201
|
+
- !ruby/object:Gem::Version
|
|
202
|
+
version: '0'
|
|
203
203
|
description: software to fetch configuration from network devices and store them
|
|
204
204
|
email:
|
|
205
205
|
- saku@ytti.fi
|
|
@@ -238,6 +238,7 @@ files:
|
|
|
238
238
|
- docs/Model-Notes/Netgear.md
|
|
239
239
|
- docs/Model-Notes/Nokia.md
|
|
240
240
|
- docs/Model-Notes/README.md
|
|
241
|
+
- docs/Model-Notes/SmartAX-Huawei.md
|
|
241
242
|
- docs/Model-Notes/VRP-Huawei.md
|
|
242
243
|
- docs/Model-Notes/Viptela.md
|
|
243
244
|
- docs/Model-Notes/XGS4600-Zyxel.md
|
|
@@ -302,6 +303,7 @@ files:
|
|
|
302
303
|
- lib/oxidized/model/asa.rb
|
|
303
304
|
- lib/oxidized/model/asyncos.rb
|
|
304
305
|
- lib/oxidized/model/audiocodes.rb
|
|
306
|
+
- lib/oxidized/model/audiocodesmp.rb
|
|
305
307
|
- lib/oxidized/model/awplus.rb
|
|
306
308
|
- lib/oxidized/model/axos.rb
|
|
307
309
|
- lib/oxidized/model/boss.rb
|
|
@@ -313,6 +315,7 @@ files:
|
|
|
313
315
|
- lib/oxidized/model/cisconga.rb
|
|
314
316
|
- lib/oxidized/model/ciscosma.rb
|
|
315
317
|
- lib/oxidized/model/ciscosmb.rb
|
|
318
|
+
- lib/oxidized/model/ciscovpn3k.rb
|
|
316
319
|
- lib/oxidized/model/comnetms.rb
|
|
317
320
|
- lib/oxidized/model/comtrol.rb
|
|
318
321
|
- lib/oxidized/model/comware.rb
|
|
@@ -340,6 +343,7 @@ files:
|
|
|
340
343
|
- lib/oxidized/model/fujitsupy.rb
|
|
341
344
|
- lib/oxidized/model/gaiaos.rb
|
|
342
345
|
- lib/oxidized/model/gcombnps.rb
|
|
346
|
+
- lib/oxidized/model/grandstream.rb
|
|
343
347
|
- lib/oxidized/model/hatteras.rb
|
|
344
348
|
- lib/oxidized/model/hirschmann.rb
|
|
345
349
|
- lib/oxidized/model/hpebladesystem.rb
|
|
@@ -357,6 +361,7 @@ files:
|
|
|
357
361
|
- lib/oxidized/model/mtrlrfs.rb
|
|
358
362
|
- lib/oxidized/model/ndms.rb
|
|
359
363
|
- lib/oxidized/model/netgear.rb
|
|
364
|
+
- lib/oxidized/model/netgearxs716.rb
|
|
360
365
|
- lib/oxidized/model/netonix.rb
|
|
361
366
|
- lib/oxidized/model/netscaler.rb
|
|
362
367
|
- lib/oxidized/model/nos.rb
|
|
@@ -373,15 +378,18 @@ files:
|
|
|
373
378
|
- lib/oxidized/model/powerconnect.rb
|
|
374
379
|
- lib/oxidized/model/procurve.rb
|
|
375
380
|
- lib/oxidized/model/quantaos.rb
|
|
381
|
+
- lib/oxidized/model/raisecom.rb
|
|
376
382
|
- lib/oxidized/model/routeros.rb
|
|
377
383
|
- lib/oxidized/model/saos.rb
|
|
378
384
|
- lib/oxidized/model/screenos.rb
|
|
379
385
|
- lib/oxidized/model/sgos.rb
|
|
380
386
|
- lib/oxidized/model/siklu.rb
|
|
381
387
|
- lib/oxidized/model/slxos.rb
|
|
388
|
+
- lib/oxidized/model/smartax.rb
|
|
382
389
|
- lib/oxidized/model/sros.rb
|
|
383
390
|
- lib/oxidized/model/stoneos.rb
|
|
384
391
|
- lib/oxidized/model/supermicro.rb
|
|
392
|
+
- lib/oxidized/model/tdre.rb
|
|
385
393
|
- lib/oxidized/model/timos.rb
|
|
386
394
|
- lib/oxidized/model/tmos.rb
|
|
387
395
|
- lib/oxidized/model/tplink.rb
|
|
@@ -425,15 +433,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
425
433
|
requirements:
|
|
426
434
|
- - ">="
|
|
427
435
|
- !ruby/object:Gem::Version
|
|
428
|
-
version: 2.
|
|
436
|
+
version: '2.3'
|
|
429
437
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
430
438
|
requirements:
|
|
431
439
|
- - ">="
|
|
432
440
|
- !ruby/object:Gem::Version
|
|
433
441
|
version: '0'
|
|
434
442
|
requirements: []
|
|
435
|
-
|
|
436
|
-
rubygems_version: 2.7.6
|
|
443
|
+
rubygems_version: 3.0.2
|
|
437
444
|
signing_key:
|
|
438
445
|
specification_version: 4
|
|
439
446
|
summary: feeble attempt at rancid
|