diff options
author | Jeff McCune <jeff@puppetlabs.com> | 2011-07-10 12:57:23 -0700 |
---|---|---|
committer | Jeff McCune <jeff@puppetlabs.com> | 2011-07-10 12:57:23 -0700 |
commit | 8fe2e555ac3d57f5b6503ffe1a5466db8d6e190a (patch) | |
tree | d5a5060944d69303deda8ce7b0b8fd85b853b747 /lib/puppet/parser/functions/create_resources.rb | |
parent | d58eacd6b4abc804bc5326184ed59c309fd04149 (diff) | |
parent | 5826f7399325c784a5e8e33c7fabc46e202334a8 (diff) | |
download | puppet-8fe2e555ac3d57f5b6503ffe1a5466db8d6e190a.tar.gz puppet-8fe2e555ac3d57f5b6503ffe1a5466db8d6e190a.tar.xz puppet-8fe2e555ac3d57f5b6503ffe1a5466db8d6e190a.zip |
Merge branch 'ticket/2.7.x/8032_create_resource_containment' into 2.7.x
* ticket/2.7.x/8032_create_resource_containment:
(#8032) Add containment to create_resources
Diffstat (limited to 'lib/puppet/parser/functions/create_resources.rb')
-rw-r--r-- | lib/puppet/parser/functions/create_resources.rb | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/lib/puppet/parser/functions/create_resources.rb b/lib/puppet/parser/functions/create_resources.rb index 430f110b4..3b8bb3543 100644 --- a/lib/puppet/parser/functions/create_resources.rb +++ b/lib/puppet/parser/functions/create_resources.rb @@ -27,15 +27,16 @@ Takes two parameters: args[1].each do |title, params| raise ArgumentError, 'params should not contain title' if(params['title']) case type_of_resource - when :type - res = resource.hash2resource(params.merge(:title => title)) - catalog.add_resource(res) - when :define + # JJM The only difference between a type and a define is the call to instantiate_resource + # for a defined type. + when :type, :define p_resource = Puppet::Parser::Resource.new(type_name, title, :scope => self, :source => resource) params.merge(:name => title).each do |k,v| p_resource.set_parameter(k,v) end - resource.instantiate_resource(self, p_resource) + if type_of_resource == :define then + resource.instantiate_resource(self, p_resource) + end compiler.add_resource(self, p_resource) when :class klass = find_hostclass(title) |