8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/conjur/policy/yaml/loader.rb', line 8
def load yaml, filename = nil
dirname = if filename
File.dirname(filename)
else
'.'
end
parser = Psych::Parser.new(handler = Handler.new)
handler.filename = filename
handler.parser = parser
begin
parser.parse(yaml)
rescue
handler.log { $!.message }
handler.log { $!.backtrace.join(" \n") }
raise Invalid.new($!.message || "(no message)", filename, parser.mark)
end
records = handler.result
parse_includes records, dirname
records
end
|