ohai 8.24.1 → 8.25.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +1 -2
- data/Rakefile +0 -11
- data/lib/ohai/config.rb +1 -0
- data/lib/ohai/dsl/plugin.rb +4 -0
- data/lib/ohai/exception.rb +1 -0
- data/lib/ohai/plugins/solaris2/network.rb +2 -1
- data/lib/ohai/runner.rb +5 -0
- data/lib/ohai/system.rb +6 -0
- data/lib/ohai/version.rb +1 -1
- data/spec/unit/plugins/solaris2/network_spec.rb +3 -6
- data/spec/unit/system_spec.rb +25 -0
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 58c6a195abed88b1939ee4a307af1ee95d93a3c7
|
4
|
+
data.tar.gz: 6772104fe5375365f284283dec75aef36e6c185b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4800a4c9c26c0b5aa02279009c73c85b4e5697c1b52183391c190531508a890100deeaa23e9d09874cca53c6b008b694e7da6bc6642f14c977edfb6de9ff3dce
|
7
|
+
data.tar.gz: dd2ea9399d4a1a416cdda93f3280a41df665654d83eda6fb119a3b6db2e3dd17a5364ca41e1ca9e955eaabdc672968466228f92cef40412a1c83eaff109b6f69
|
data/Gemfile
CHANGED
@@ -5,7 +5,7 @@ gemspec
|
|
5
5
|
group :development do
|
6
6
|
gem "sigar", :platform => "ruby"
|
7
7
|
|
8
|
-
gem "chefstyle", "0.
|
8
|
+
gem "chefstyle", "0.4.0"
|
9
9
|
gem "overcommit", ">= 0.34.1"
|
10
10
|
gem "pry-byebug"
|
11
11
|
gem "pry-stack_explorer"
|
@@ -16,6 +16,5 @@ group :development do
|
|
16
16
|
gem "rspec-mocks", "~> 3.0"
|
17
17
|
gem "rspec-collection_matchers", "~> 1.0"
|
18
18
|
gem "rspec_junit_formatter"
|
19
|
-
gem "github_changelog_generator", git: "https://github.com/chef/github-changelog-generator"
|
20
19
|
gem "activesupport", "< 5.0" if RUBY_VERSION <= "2.2.2" # github_changelog_generator dep
|
21
20
|
end
|
data/Rakefile
CHANGED
@@ -22,14 +22,3 @@ require "rubocop/rake_task"
|
|
22
22
|
RuboCop::RakeTask.new(:style) do |task|
|
23
23
|
task.options += ["--display-cop-names", "--no-color"]
|
24
24
|
end
|
25
|
-
|
26
|
-
require "github_changelog_generator/task"
|
27
|
-
|
28
|
-
GitHubChangelogGenerator::RakeTask.new :changelog do |config|
|
29
|
-
config.future_release = Ohai::VERSION
|
30
|
-
config.max_issues = 0
|
31
|
-
config.add_issues_wo_labels = false
|
32
|
-
config.enhancement_labels = "enhancement,Enhancement,New Feature,Feature".split(",")
|
33
|
-
config.bug_labels = "bug,Bug,Improvement,Upstream Bug".split(",")
|
34
|
-
config.exclude_labels = "duplicate,question,invalid,wontfix,no_changelog,Exclude From Changelog,Question,Discussion".split(",")
|
35
|
-
end
|
data/lib/ohai/config.rb
CHANGED
data/lib/ohai/dsl/plugin.rb
CHANGED
@@ -85,10 +85,12 @@ module Ohai
|
|
85
85
|
include Ohai::Util::FileHelper
|
86
86
|
|
87
87
|
attr_reader :data
|
88
|
+
attr_reader :failed
|
88
89
|
|
89
90
|
def initialize(data)
|
90
91
|
@data = data
|
91
92
|
@has_run = false
|
93
|
+
@failed = false
|
92
94
|
end
|
93
95
|
|
94
96
|
def run
|
@@ -183,8 +185,10 @@ module Ohai
|
|
183
185
|
begin
|
184
186
|
self.run
|
185
187
|
rescue Ohai::Exceptions::Error => e
|
188
|
+
@failed = true
|
186
189
|
raise e
|
187
190
|
rescue => e
|
191
|
+
@failed = true
|
188
192
|
Ohai::Log.debug("Plugin #{self.name} threw #{e.inspect}")
|
189
193
|
e.backtrace.each { |line| Ohai::Log.debug( line ) }
|
190
194
|
end
|
data/lib/ohai/exception.rb
CHANGED
@@ -103,7 +103,8 @@ Ohai.plugin(:Network) do
|
|
103
103
|
cint = nil
|
104
104
|
|
105
105
|
so.stdout.lines do |line|
|
106
|
-
|
106
|
+
# regex: http://rubular.com/r/Iag7JLVTVe
|
107
|
+
if line =~ /^([0-9a-zA-Z\.\:\-]+): \S+ mtu (\d+) index (\d+)/
|
107
108
|
cint = $1
|
108
109
|
iface[cint] = Mash.new unless iface[cint]
|
109
110
|
iface[cint][:mtu] = $2
|
data/lib/ohai/runner.rb
CHANGED
@@ -22,11 +22,13 @@ require "ohai/dsl"
|
|
22
22
|
module Ohai
|
23
23
|
class Runner
|
24
24
|
|
25
|
+
attr_reader :failed_plugins
|
25
26
|
# safe_run: set to true if this runner will run plugins in
|
26
27
|
# safe-mode. default false.
|
27
28
|
def initialize(controller, safe_run = false)
|
28
29
|
@provides_map = controller.provides_map
|
29
30
|
@safe_run = safe_run
|
31
|
+
@failed_plugins = []
|
30
32
|
end
|
31
33
|
|
32
34
|
# Runs plugins and any un-run dependencies.
|
@@ -82,6 +84,9 @@ module Ohai
|
|
82
84
|
|
83
85
|
if dependency_providers.empty?
|
84
86
|
@safe_run ? next_plugin.safe_run : next_plugin.run
|
87
|
+
if next_plugin.failed
|
88
|
+
@failed_plugins << next_plugin.name
|
89
|
+
end
|
85
90
|
else
|
86
91
|
visited << next_plugin << dependency_providers.first
|
87
92
|
end
|
data/lib/ohai/system.rb
CHANGED
@@ -42,6 +42,7 @@ module Ohai
|
|
42
42
|
def initialize(config = {})
|
43
43
|
@plugin_path = ""
|
44
44
|
@config = config
|
45
|
+
@failed_plugins = []
|
45
46
|
reset_system
|
46
47
|
end
|
47
48
|
|
@@ -102,6 +103,11 @@ module Ohai
|
|
102
103
|
Ohai::Log.error("Encountered error while running plugins: #{e.inspect}")
|
103
104
|
raise
|
104
105
|
end
|
106
|
+
critical_failed = Ohai::Config.ohai[:critical_plugins] & @runner.failed_plugins
|
107
|
+
unless critical_failed.empty?
|
108
|
+
msg = "The following Ohai plugins marked as critical failed: #{critical_failed}. Exiting."
|
109
|
+
raise Ohai::Exceptions::CriticalPluginFailure, msg
|
110
|
+
end
|
105
111
|
end
|
106
112
|
|
107
113
|
def have_v6_plugin?(name)
|
data/lib/ohai/version.rb
CHANGED
@@ -69,9 +69,7 @@ lo0: flags=1000849<UP,LOOPBACK,RUNNING,MULTICAST,IPv4> mtu 8232 index 1
|
|
69
69
|
eri0: flags=1004843<UP,BROADCAST,RUNNING,MULTICAST,DHCP,IPv4> mtu 1500 \
|
70
70
|
index 2
|
71
71
|
inet 172.17.128.208 netmask ffffff00 broadcast 172.17.128.255
|
72
|
-
ip6.tun0: flags=10008d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST,IPv4>
|
73
|
-
mtu 1460
|
74
|
-
index 3
|
72
|
+
ip6.tun0: flags=10008d1<UP,POINTOPOINT,RUNNING,NOARP,MULTICAST,IPv4> mtu 1460 index 3
|
75
73
|
inet6 tunnel src fe80::1 tunnel dst fe80::2
|
76
74
|
tunnel security settings --> use 'ipsecconf -ln -i ip.tun1'
|
77
75
|
tunnel hop limit 60 tunnel encapsulation limit 4
|
@@ -80,8 +78,7 @@ qfe1: flags=2000841<UP,RUNNING,MULTICAST,IPv6> mtu 1500 index 3
|
|
80
78
|
usesrc vni0
|
81
79
|
inet6 fe80::203:baff:fe17:4be0/10
|
82
80
|
ether 0:3:ba:17:4b:e0
|
83
|
-
vni0: flags=2002210041<UP,RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu
|
84
|
-
index 5
|
81
|
+
vni0: flags=2002210041<UP,RUNNING,NOXMIT,NONUD,IPv6,VIRTUAL> mtu 1460 index 5
|
85
82
|
srcof qfe1
|
86
83
|
inet6 fe80::203:baff:fe17:4444/128
|
87
84
|
ENDIFCONFIG
|
@@ -176,7 +173,7 @@ ROUTE_GET
|
|
176
173
|
end
|
177
174
|
|
178
175
|
it "finds the default interface for a solaris 11 zone" do
|
179
|
-
expect(@plugin[:network][:default_interface]).to eq("net1")
|
176
|
+
expect(@plugin[:network][:default_interface]).to eq("net1:1")
|
180
177
|
end
|
181
178
|
end
|
182
179
|
|
data/spec/unit/system_spec.rb
CHANGED
@@ -52,6 +52,7 @@ describe "Ohai::System" do
|
|
52
52
|
config = {
|
53
53
|
disabled_plugins: [ :Foo, :Baz ],
|
54
54
|
directory: "/some/extra/plugins",
|
55
|
+
critical_plugins: [ :Foo, :Bar ],
|
55
56
|
}
|
56
57
|
allow(Ohai::Config).to receive(:merge_deprecated_config)
|
57
58
|
expect(Ohai.config).to receive(:merge!).with(config).and_call_original
|
@@ -337,6 +338,15 @@ Ohai.plugin(:Park) do
|
|
337
338
|
park("plants")
|
338
339
|
end
|
339
340
|
end
|
341
|
+
EOF
|
342
|
+
|
343
|
+
with_plugin("fails.rb", <<EOF)
|
344
|
+
Ohai.plugin(:Fails) do
|
345
|
+
provides 'fails'
|
346
|
+
collect_data(:default) do
|
347
|
+
fail 'thing'
|
348
|
+
end
|
349
|
+
end
|
340
350
|
EOF
|
341
351
|
|
342
352
|
it "should collect data from all the plugins" do
|
@@ -371,6 +381,21 @@ EOF
|
|
371
381
|
expect(ohai.data[:park]).to eq("plants")
|
372
382
|
end
|
373
383
|
end
|
384
|
+
|
385
|
+
describe "when using :critical_plugins" do
|
386
|
+
before do
|
387
|
+
Ohai.config[:critical_plugins] = [ :Fails ]
|
388
|
+
end
|
389
|
+
after do
|
390
|
+
Ohai.config[:critical_plugins] = []
|
391
|
+
end
|
392
|
+
|
393
|
+
it "should fail when critical plugins fail" do
|
394
|
+
Ohai.config[:plugin_path] = [ path_to(".") ]
|
395
|
+
expect { ohai.all_plugins }.to raise_error(Ohai::Exceptions::CriticalPluginFailure)
|
396
|
+
end
|
397
|
+
|
398
|
+
end
|
374
399
|
end
|
375
400
|
|
376
401
|
when_plugins_directory "contains v6 & v7 plugins in different directories" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ohai
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 8.
|
4
|
+
version: 8.25.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Adam Jacob
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-10-18 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: systemu
|
@@ -546,7 +546,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
546
546
|
version: '0'
|
547
547
|
requirements: []
|
548
548
|
rubyforge_project:
|
549
|
-
rubygems_version: 2.6.
|
549
|
+
rubygems_version: 2.6.13
|
550
550
|
signing_key:
|
551
551
|
specification_version: 4
|
552
552
|
summary: Ohai profiles your system and emits JSON
|