Method: Puppet::DSL::ResourceAPI#create_resource

Defined in:
lib/vendor/puppet/dsl/resource_api.rb

#create_resource(type, names, arguments = nil) ⇒ Object

Raises:

  • (ArgumentError)


51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
# File 'lib/vendor/puppet/dsl/resource_api.rb', line 51

def create_resource(type, names, arguments = nil)
  names = [names] unless names.is_a?(Array)

  arguments ||= {}
  raise ArgumentError, "Resource arguments must be provided as a hash" unless arguments.is_a?(Hash)

  names.collect do |name|
    resource = Puppet::Parser::Resource.new(type, name, :scope => scope)
    arguments.each do |param, value|
      resource[param] = value
    end

    resource.exported = true if exporting?
    resource.virtual = true if virtualizing?
    scope.compiler.add_resource(scope, resource)
    resource
  end
end