lib/puppet/node/catalog.rb in puppet-0.24.2 vs lib/puppet/node/catalog.rb in puppet-0.24.3
- old
+ new
@@ -82,10 +82,11 @@
end
end
# Create an alias for a resource.
def alias(resource, name)
+ #set $1
resource.ref =~ /^(.+)\[/
newref = "%s[%s]" % [$1 || resource.class.name, name]
if existing = @resource_table[newref]
return if existing == resource
@@ -472,9 +473,18 @@
result = self.class.new(self.name)
map = {}
vertices.each do |resource|
next if resource.respond_to?(:virtual?) and resource.virtual?
+
+ #This is hackity hack for 1094
+ #Aliases aren't working in the ral catalog because the current instance of the resource
+ #has a reference to the catalog being converted. . . So, give it a reference to the new one
+ #problem solved. . .
+ if resource.is_a?(Puppet::TransObject)
+ resource = resource.dup
+ resource.catalog = result
+ end
newres = resource.send(convert)
# We can't guarantee that resources don't munge their names
# (like files do with trailing slashes), so we have to keep track