summaryrefslogtreecommitdiffstats
path: root/lib/puppet/resource/catalog.rb
diff options
context:
space:
mode:
Diffstat (limited to 'lib/puppet/resource/catalog.rb')
-rw-r--r--lib/puppet/resource/catalog.rb17
1 files changed, 3 insertions, 14 deletions
diff --git a/lib/puppet/resource/catalog.rb b/lib/puppet/resource/catalog.rb
index 266f04903..88aa9517d 100644
--- a/lib/puppet/resource/catalog.rb
+++ b/lib/puppet/resource/catalog.rb
@@ -65,7 +65,7 @@ class Puppet::Resource::Catalog < Puppet::SimpleGraph
unless resource.respond_to?(:ref)
raise ArgumentError, "Can only add objects that respond to :ref, not instances of %s" % resource.class
end
- end.find_all { |resource| fail_or_skip_unless_unique(resource) }.each do |resource|
+ end.each { |resource| fail_unless_unique(resource) }.each do |resource|
ref = resource.ref
@transient_resources << resource if applying?
@@ -430,20 +430,9 @@ class Puppet::Resource::Catalog < Puppet::SimpleGraph
end
# Verify that the given resource isn't defined elsewhere.
- def fail_or_skip_unless_unique(resource)
+ def fail_unless_unique(resource)
# Short-curcuit the common case,
- return resource unless existing_resource = @resource_table[resource.ref]
-
- if resource.implicit?
- resource.debug "Generated resource conflicts with explicit resource; ignoring generated resource"
- return nil
- elsif old = resource(resource.ref) and old.implicit?
- # The existing resource is implicit; remove it and replace it with
- # the new one.
- old.debug "Replacing with new resource"
- remove_resource(old)
- return resource
- end
+ return unless existing_resource = @resource_table[resource.ref]
# If we've gotten this far, it's a real conflict