Explicitly load functions used by ensure_resource
The ensure_resource function actually calls two other functions, create_resources and defined_with_param. When calling Puppet functions from Ruby, you sometimes have to load the functions manually if they have not been called before. This commit explicitly loads the functions that ensure_resource depends on from within the function.
This commit is contained in:
parent
b42c82af19
commit
5d99cdf09c
1 changed files with 2 additions and 0 deletions
|
@ -25,9 +25,11 @@ ENDOFDOC
|
|||
raise(ArgumentError, 'Must specify a type') unless type
|
||||
raise(ArgumentError, 'Must specify a title') unless title
|
||||
params ||= {}
|
||||
Puppet::Parser::Functions.function(:defined_with_params)
|
||||
if function_defined_with_params(["#{type}[#{title}]", params])
|
||||
Puppet.debug("Resource #{type}[#{title}] not created b/c it already exists")
|
||||
else
|
||||
Puppet::Parser::Functions.function(:create_resources)
|
||||
function_create_resources([type.capitalize, { title => params }])
|
||||
end
|
||||
end
|
||||
|
|
Loading…
Reference in a new issue