summaryrefslogtreecommitdiffstats
path: root/lib/puppet/node.rb
Commit message (Collapse)AuthorAgeFilesLines
* Moved the configuration of the Node cache to the puppetmasterdLuke Kanies2008-03-241-1/+1
| | | | | executable, since it otherwise causes caches to be used in all cases, which we don't want (e.g., bin/puppet was using them).
* Caching node information in yaml (I figured caching in memory willLuke Kanies2008-03-161-1/+1
| | | | | | | | | | cause ever-larger memory growth), and changing the external node terminus to use the version of the facts as their version. This will usually result in the cached node information being used, instead of always hitting the external node app during file serving. Note that if the facts aren't changed by the client, then this will result in the cached node being used, but at this point, the client always updates its facts. (#1130)
* Adding an Indirection reference, along with the workLuke Kanies2007-12-101-3/+4
| | | | necessary to support it.
* Fixing #951 -- external nodes work again, but you have toLuke Kanies2007-12-101-6/+78
| | | | set the 'node_terminus' setting to 'exec'.
* Using the Environment class to determine the default environment,Luke Kanies2007-11-201-7/+12
| | | | | rather than plenty of different places having the logic of how to determine the default environment.
* Adding a :code setting for specifying code to runLuke Kanies2007-10-051-1/+1
| | | | | | | | instead of a manifest, and removing all of the ambiguity around whether an interpreter gets its own file specified or uses the central setting. Most of the changes are around fixing existing tests to use this new system.
* Merge branch 'configurations' into indirectionLuke Kanies2007-09-221-0/+3
|\ | | | | | | | | | | | | | | | | Conflicts: lib/puppet/defaults.rb lib/puppet/indirector/facts/yaml.rb spec/unit/indirector/indirection.rb spec/unit/indirector/indirector.rb
| * The whole system now uses Configuration objects instead ofLuke Kanies2007-09-151-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ever converting the Transportable objects into a tree of components and then converting that into a graph. This is a significant step, and drastically simplifies the model of how to use a configuration. The old code might have looked something like this: file = Puppet::Type.create :path => "/whatever", ... comp = Puppet::Type.create :name => :whatever comp.push file transaction = comp.evaluate transaction.evaluate The new code looks like this: file = Puppet::Type.create :path => "/whatever", ... config = Puppet::Node::Configuration.new config.add_resource file config.apply I did not really intend to do this much refactoring, but I found I could not use a Configuration object to do work without refactoring a lot of the system. The primary problem was that the Client::Master and the Config classes determined how the transactions behaved; when I moved to using a Configuration, this distinction was lost, which meant that configurations were often needing to create other configurations, which resulted in a whole lot of infinite recursion (e.g., Config objects that create directories for Puppet use Configuration objects -- yes, I'm s/Config/Settings/g soon -- and these Configuration objects would need to create directories). Not everything is fixed, but it's very close. I am clearly over the hump, though, so I wanted to get a commit in.
* | The indirector specs now all pass. I think I needLuke Kanies2007-09-211-1/+1
| | | | | | | | to add a few more specs, though.
* | Fixing all existing spec tests so that they nowLuke Kanies2007-09-201-1/+1
|/ | | | | | pass given the redesign that Rick implemented. This was mostly a question of fixing the method names and the mocks.
* Another intermediate commit. The node and fact classes are now functional ↵Luke Kanies2007-09-121-4/+13
| | | | and are used instead of the network handlers, which have been removed. There are some failing tests as a result, but I want to get this code committed before I massage the rest of the system to make it work again.
* The Node handler is now obsolete. Node searching is handled through the ↵Luke Kanies2007-09-111-110/+5
| | | | indirector. I have not yet added the tests for the node handlers themselves, which is next.
* Doing an intermediate commit so rick can look at the work I have done so far.Luke Kanies2007-09-111-1/+120
|
* Adding a bit of testing for node names.Luke Kanies2007-08-261-1/+9
|
* Moving the node tests to rspec, and cleaning up the spec of the node, ↵Luke Kanies2007-08-261-6/+19
| | | | especially WRT the environment.
* The last commits before I actually start on the multi-environment support. ↵Luke Kanies2007-08-221-0/+40
There are still failing tests, but apparently only those that are also failing in trunk.