summaryrefslogtreecommitdiffstats
path: root/lib/puppet/node
diff options
context:
space:
mode:
authorLuke Kanies <luke@madstop.com>2008-01-07 19:24:10 -0600
committerLuke Kanies <luke@madstop.com>2008-01-07 19:24:10 -0600
commit40addcd1920b0fa2f558c415e65ea665bac812f9 (patch)
treed2792c1d8c84d2cfaed6b48a4642d3ef29ba79c9 /lib/puppet/node
parent927dff41df8f1c236c54eaee9fa1db7a3efaf02a (diff)
downloadpuppet-40addcd1920b0fa2f558c415e65ea665bac812f9.tar.gz
puppet-40addcd1920b0fa2f558c415e65ea665bac812f9.tar.xz
puppet-40addcd1920b0fa2f558c415e65ea665bac812f9.zip
Fixing #982 -- I have completely removed the GRATR graph library
from the system, and implemented my own topsort method.
Diffstat (limited to 'lib/puppet/node')
-rw-r--r--lib/puppet/node/catalog.rb9
1 files changed, 1 insertions, 8 deletions
diff --git a/lib/puppet/node/catalog.rb b/lib/puppet/node/catalog.rb
index c9de2019d..9601309d8 100644
--- a/lib/puppet/node/catalog.rb
+++ b/lib/puppet/node/catalog.rb
@@ -1,5 +1,4 @@
require 'puppet/indirector'
-require 'puppet/external/gratr/digraph'
# This class models a node catalog. It is the thing
# meant to be passed from server to client, and it contains all
@@ -212,9 +211,8 @@ class Puppet::Node::Catalog < Puppet::PGraph
# Create a proc for examining edges, which we'll use to build our tree
# of TransBuckets and TransObjects.
bucket = nil
- edges = proc do |edge|
+ walk(main, :out) do |source, target|
# The sources are always non-builtins.
- source, target = edge.source, edge.target
unless tmp = buckets[source.to_s]
if tmp = buckets[source.to_s] = source.to_trans
bucket = tmp
@@ -239,11 +237,6 @@ class Puppet::Node::Catalog < Puppet::PGraph
end
end
end
- dfs(:start => main, :examine_edge => edges)
-
- unless main
- raise Puppet::DevError, "Could not find 'main' class; cannot generate catalog"
- end
# Retrieve the bucket for the top-level scope and set the appropriate metadata.
unless result = buckets[main.to_s]