diff options
Diffstat (limited to 'lib/puppet/parser')
-rw-r--r-- | lib/puppet/parser/collector.rb | 2 | ||||
-rw-r--r-- | lib/puppet/parser/resource.rb | 12 | ||||
-rw-r--r-- | lib/puppet/parser/resource/param.rb | 10 |
3 files changed, 12 insertions, 12 deletions
diff --git a/lib/puppet/parser/collector.rb b/lib/puppet/parser/collector.rb index 2b4e71d77..61807717d 100644 --- a/lib/puppet/parser/collector.rb +++ b/lib/puppet/parser/collector.rb @@ -27,7 +27,7 @@ class Puppet::Parser::Collector # and such, we'll need to vary the conditions, but this works with no # attributes, anyway. Puppet::Util.benchmark(:debug, "Collected #{self.type} resources") do - Puppet::Rails::Resource.find_all_by_restype_and_exported(@type, true, + Puppet::Rails::RailsResource.find_all_by_restype_and_exported(@type, true, args ).each do |obj| count += 1 diff --git a/lib/puppet/parser/resource.rb b/lib/puppet/parser/resource.rb index 8c1153929..cb339e38d 100644 --- a/lib/puppet/parser/resource.rb +++ b/lib/puppet/parser/resource.rb @@ -256,25 +256,27 @@ class Puppet::Parser::Resource # with. def store(host) args = {} - #FIXME: support files/lines, etc. - #%w{type title tags file line exported}.each do |param| - %w{type title tags exported}.each do |param| + %w{type title tags file line exported}.each do |param| if value = self.send(param) args[param] = value end end + # 'type' isn't a valid column name, so we have to use something else. args = symbolize_options(args) + args[:restype] = args[:type] + args.delete(:type) # Let's see if the object exists - if obj = host.resources.find_by_type_and_title(self.type, self.title) + #if obj = host.rails_resources.find_by_type_and_title(self.type, self.title) + if obj = host.rails_resources.find_by_restype_and_title(self.type, self.title) # We exist args.each do |param, value| obj[param] = value end else # Else create it anew - obj = host.resources.build(args) + obj = host.rails_resources.build(args) end # Either way, now add our parameters diff --git a/lib/puppet/parser/resource/param.rb b/lib/puppet/parser/resource/param.rb index bcd59573a..600e44781 100644 --- a/lib/puppet/parser/resource/param.rb +++ b/lib/puppet/parser/resource/param.rb @@ -18,22 +18,20 @@ class Puppet::Parser::Resource::Param # Store this parameter in a Rails db. def store(resource) args = {} - #FIXME: re-add line/file support - #[:name, :value, :line, :file].each do |var| - [:name, :value ].each do |var| + [:name, :value, :line, :file].each do |var| if val = self.send(var) args[var] = val end end args[:name] = args[:name].to_s - if pname = resource.param_names.find_by_name(self.name) + if obj = resource.rails_parameters.find_by_name(self.name) # We exist args.each do |p, v| - pname.param_values.build(v) + obj[p] = v end else # Else create it anew - obj = resource.param_names.build(:name => self.class) + obj = resource.rails_parameters.build(args) end return obj |