Skip to content

Commit 0ff19d1

Browse files
committed
Lazy load check config file
Only resource[:name] is set at initialize time, need to load the file after in order for exists? to work
1 parent 6eda3f0 commit 0ff19d1

File tree

1 file changed

+20
-16
lines changed
  • lib/puppet/provider/sensu_check_config

1 file changed

+20
-16
lines changed

lib/puppet/provider/sensu_check_config/json.rb

+20-16
Original file line numberDiff line numberDiff line change
@@ -4,65 +4,69 @@
44
def initialize(*args)
55
super
66

7+
@conf = nil
8+
end
9+
10+
def conf
711
begin
8-
@conf = JSON.parse(File.read("/etc/sensu/conf.d/checks_#{resource[:name]}.json"))
12+
@conf ||= JSON.parse(File.read("/etc/sensu/conf.d/checks_#{resource[:realname]}.json"))
913
rescue
10-
@conf = {}
14+
@conf ||= {}
1115
end
1216
end
1317

1418
def flush
15-
File.open("/etc/sensu/conf.d/checks_#{resource[:name]}.json", 'w') do |f|
16-
f.puts JSON.pretty_generate(@conf)
19+
File.open("/etc/sensu/conf.d/checks_#{resource[:realname]}.json", 'w') do |f|
20+
f.puts JSON.pretty_generate(conf)
1721
end
1822
end
1923

2024
def create
21-
@conf['checks'] = {}
22-
@conf['checks'][resource[:name]] = {}
25+
conf['checks'] = {}
26+
conf['checks'][resource[:realname]] = {}
2327
self.handlers = resource[:handlers]
2428
self.command = resource[:command]
2529
self.interval = resource[:interval]
2630
self.subscribers = resource[:subscribers]
2731
end
2832

2933
def destroy
30-
@conf = nil
34+
conf = nil
3135
end
3236

3337
def exists?
34-
@conf.has_key?('checks') and @conf['checks'].has_key?(resource[:name])
38+
conf.has_key?('checks') and conf['checks'].has_key?(resource[:realname])
3539
end
3640

3741
def interval
38-
@conf['checks'][resource[:name]]['interval'].to_s
42+
conf['checks'][resource[:realname]]['interval'].to_s
3943
end
4044

4145
def interval=(value)
42-
@conf['checks'][resource[:name]]['interval'] = value.to_i
46+
conf['checks'][resource[:realname]]['interval'] = value.to_i
4347
end
4448

4549
def handlers
46-
@conf['checks'][resource[:name]]['handlers'] || []
50+
conf['checks'][resource[:realname]]['handlers'] || []
4751
end
4852

4953
def handlers=(value)
50-
@conf['checks'][resource[:name]]['handlers'] = value
54+
conf['checks'][resource[:realname]]['handlers'] = value
5155
end
5256

5357
def command
54-
@conf['checks'][resource[:name]]['command']
58+
conf['checks'][resource[:realname]]['command']
5559
end
5660

5761
def command=(value)
58-
@conf['checks'][resource[:name]]['command'] = value
62+
conf['checks'][resource[:realname]]['command'] = value
5963
end
6064

6165
def subscribers
62-
@conf['checks'][resource[:name]]['subscribers'] || []
66+
conf['checks'][resource[:realname]]['subscribers'] || []
6367
end
6468

6569
def subscribers=(value)
66-
@conf['checks'][resource[:name]]['subscribers'] = value
70+
conf['checks'][resource[:realname]]['subscribers'] = value
6771
end
6872
end

0 commit comments

Comments
 (0)