diff options
author | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2007-07-05 23:54:26 +0000 |
---|---|---|
committer | luke <luke@980ebf18-57e1-0310-9a29-db15c13687c0> | 2007-07-05 23:54:26 +0000 |
commit | 3ae3a4ec9f25b590bd84a9a2693cde2e6553a6c2 (patch) | |
tree | 4128f93336030f4374be1172411a138829ceb872 | |
parent | 19e180f9081faf4661020347d678ac4835b920c1 (diff) | |
download | puppet-3ae3a4ec9f25b590bd84a9a2693cde2e6553a6c2.tar.gz puppet-3ae3a4ec9f25b590bd84a9a2693cde2e6553a6c2.tar.xz puppet-3ae3a4ec9f25b590bd84a9a2693cde2e6553a6c2.zip |
Fixing #689, although I have not added unit tests. The problem was that a tag name was being removed, rather than the tag object itself.
git-svn-id: https://reductivelabs.com/svn/puppet/trunk@2651 980ebf18-57e1-0310-9a29-db15c13687c0
-rw-r--r-- | lib/puppet/parser/resource.rb | 6 | ||||
-rw-r--r-- | lib/puppet/rails/resource.rb | 3 |
2 files changed, 5 insertions, 4 deletions
diff --git a/lib/puppet/parser/resource.rb b/lib/puppet/parser/resource.rb index 0722f388c..56b430b7f 100644 --- a/lib/puppet/parser/resource.rb +++ b/lib/puppet/parser/resource.rb @@ -207,9 +207,9 @@ class Puppet::Parser::Resource db_resource.ar_hash_merge(db_resource.get_tag_hash(), updated_tags, :create => Proc.new { |name, tag| - db_resource.add_resource_tag(tag) - }, :delete => Proc.new { |rt| - rt.each { |tag| db_resource.resource_tags.delete(tag) } + db_resource.add_resource_tag(name) + }, :delete => Proc.new { |tag| + db_resource.resource_tags.delete(tag) }, :modify => Proc.new { |db, mem| # nothing here }) diff --git a/lib/puppet/rails/resource.rb b/lib/puppet/rails/resource.rb index 0163394b1..233982ed9 100644 --- a/lib/puppet/rails/resource.rb +++ b/lib/puppet/rails/resource.rb @@ -45,7 +45,8 @@ class Puppet::Rails::Resource < ActiveRecord::Base def get_tag_hash(tags = nil) tags ||= resource_tags.find(:all, :include => :puppet_tag) return tags.inject({}) do |hash, tag| - hash[tag.puppet_tag.name] = tag.puppet_tag.name + # We have to store the tag object, not just the tag name. + hash[tag.puppet_tag.name] = tag hash end end |