summaryrefslogtreecommitdiffstats
path: root/lib/puppet/network
Commit message (Collapse)AuthorAgeFilesLines
...
| * | Refactoring, argument processing for model methods.Rick Bradley2007-10-163-9/+53
| | |
| * | Tweak to move model lookup functionality into the Handler base class where ↵Rick Bradley2007-10-163-2/+1
| | | | | | | | | | | | it belongs. Robustifying the request sanitization a bit more.
| * | Refactored to use a Handler base class for server+protocol handlers. ↵Rick Bradley2007-10-164-58/+76
| | | | | | | | | | | | Finally eliminated dependency on Puppet.start, etc., from WEBrick HTTP server class. {webrick,mongrel}+REST now support request handling uniformly; need encode/decode next.
| * | Inlined the controller, eliminating a class. Mongrel+REST has the right ↵Rick Bradley2007-10-162-33/+42
| | | | | | | | | | | | bits for request handling prior to the encode/decode/exception-handling bits. Refactored to make the common logic extractable to a base class.
| * | Registration now built for {webrick,mongrel} REST handlers.Rick Bradley2007-10-162-4/+16
| | |
| * | Going back to each server+protocol object being responsible for only one ↵Rick Bradley2007-10-164-14/+10
| | | | | | | | | | | | indirection, as the REST vs. XMLRPC models are different enough that the object must register itself on initialization and handle the request when it comes in.
| * | First pass through initializers of {mongrel, webrick} REST handlers; hooks ↵Rick Bradley2007-10-164-7/+31
| | | | | | | | | | | | into Indirection to look up models from indirected names.
| * | Minor tweaks to make the ::Server initialization a bit more robust. Fail on ↵Rick Bradley2007-10-161-2/+6
| | | | | | | | | | | | unknown HTTP Server types; fail fast.
| * | Finish front end of delegation to server+protocol helper classes ("handlers").Rick Bradley2007-10-156-9/+26
| | |
| * | Bringing in initial handlers for server+protocol pairs.Rick Bradley2007-10-152-12/+19
| | |
| * | Partial support for building Handlers for all handler-protocol pairs.Rick Bradley2007-10-152-2/+43
| | |
| * | Implementing address & port support for new webrick server.Rick Bradley2007-10-151-2/+6
| | |
| * | Hooking up address/port support for the various servers w/ specs. Still ↵Rick Bradley2007-10-153-4/+13
| | | | | | | | | | | | need to start up a webrick server w/ address + port (this is far too incestuous with Puppet lib & Puppet.start at the moment).
| * | trivial: WEBRick -> WEBrick, to be more consistent with how the WEBrick ruby ↵Rick Bradley2007-10-152-4/+4
| | | | | | | | | | | | classes are named.
| * | Implementing listening state tracking for webrick and mongrel.Rick Bradley2007-10-152-4/+13
| | |
| * | More unit specs for mongrel and webrick; more code to make them work, yo.Rick Bradley2007-10-153-3/+41
| | |
| * | Pushing functionality down to webrick/mongrel classes now; cleanup in the ↵Rick Bradley2007-10-154-22/+17
| | | | | | | | | | | | base server / http server classes + specs.
| * | Merge branch 'master' of git://reductivelabs.com/puppet into routingRick Bradley2007-10-131-64/+6
| |\|
| * | more stuff for the interim commitRick Bradley2007-10-122-0/+48
| | |
| * | interim checkin of network stuffsRick Bradley2007-10-121-53/+45
| | |
| * | Merge branch 'master' of git://reductivelabs.com/puppet into routingRick Bradley2007-10-091-8/+2
| |\ \
| * \ \ Merge branch 'master' of git://reductivelabs.com/puppet into routingRick Bradley2007-10-063-46/+16
| |\ \ \
* | | | | Fixing a bit of indentation and commenting in the xmlrpc/client fileLuke Kanies2007-10-291-4/+3
| |_|_|/ |/| | |
* | | | Translating the report handler to an indirected model.Luke Kanies2007-10-131-64/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've provided backward compatibility with the old handler. The only terminus type that currently exists for reports is the 'code' terminus, which is used to process reports in the style of the old handler. At some point, we should likely switch at least some of these report types (e.g., 'store') to terminus types.
* | | | Merge branch 'master' of git://michaelobrien.info/puppet into michaelLuke Kanies2007-10-093-52/+16
|\ \ \ \ | |/ / / |/| | / | | |/ | |/|
| * | All tests should now pass again.Luke Kanies2007-10-081-8/+2
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | This is the first real pass towards using caching. The `puppet` executable actually uses the indirection work, instead of handlers and such (and man! is it cleaner). Most of this work was a result of trying to get the client-side story working, with correct yaml caching of configurations, which means this commit also covers converting configurations to yaml, which was a much bigger PITA than it needed to be. I still need to write integration tests, and I also need to cover the server-side story of a normal configuration retrieval.
| * Another round of test-fixing around the changes I madeLuke Kanies2007-10-053-46/+15
| | | | | | | | | | | | | | | | | | to the configuration system. 'puppet' itself still works, even with -e, but I expect that puppetd and puppetmasterd are broken, and there are still quite a few broken tests because the default fact store can't write but that's the default behaviour for a networked configuration master.
| * This commit is focused on getting the 'puppet' executableLuke Kanies2007-10-051-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | to work. As a result, it involves a lot of integration-level testing, and a lot of small design changes to make the code actually work. In particular, indirections can now have default termini, so that configurations and facts default to their code terminus Also, I've removed the ability to manually control whether ast nodes are used. I might need to add it back in later, but if so it will be in the form of a global setting, rather than the previous system of passing it through 10 different classes. Instead, the parser detects whether there are AST nodes defined and requires them if so or ignores them if not. About 75 tests are still failing in the main set of tests, but it's going to be a long slog to get them working -- there are significant design issues around them, as most of the failures are a result of tests trying to emulate both the client and server sides of a connection, which normally would have different fact termini but in this case must have the same terminus just because they're in the same process and are global. The next step, then, is to figure that process out, thus finding a way to make this all work.
* | Trivial tweak on HTTPServer module fileRick Bradley2007-10-051-1/+2
| |
* | Moving the webrick/mongrel "servers" over to HTTPServer module instead of ↵Rick Bradley2007-10-055-43/+70
| | | | | | | | Server. Using Server as the master class for client connections. Server (former RESTServer) will instantiate the appropriate subclass based upon Puppet configurator setting. There are now tests broken in the network section which I can't seem to figure out yet. Not a happy place to be.
* | Minor tweaks.Rick Bradley2007-10-041-1/+1
| |
* | Allow for multiple REST servers to be active; some terminology changes in ↵Rick Bradley2007-10-041-21/+23
| | | | | | | | spec; fleshing out more behavior, implementing.
* | Added .listening to REST server, handle listen states and transitions.Rick Bradley2007-10-041-0/+15
| |
* | Updating first portion of the Network RESTServer spec with example code, ↵Rick Bradley2007-10-041-0/+18
| | | | | | | | getting the added examples to pass.
* | Merge branch 'master' of git://reductivelabs.com/puppet into routingRick Bradley2007-10-0431-45/+8
|\|
| * Removing the Id tags from all of the filesLuke Kanies2007-10-0329-29/+0
| |
| * Fixing #814 -- when files are missing, the exceptions shouldLuke Kanies2007-10-032-16/+8
| | | | | | | | now be more reasonable.
* | Interpreting "hidden" class from spec drafts as a REST Controller. This ↵Rick Bradley2007-10-031-0/+2
| | | | | | | | name, functionality, and/or location in the tree is subject to change, but it's down now somewhere so we can move forward on it.
* | Added partial spec for the serving of REST information, as well as some ↵Rick Bradley2007-10-031-0/+2
|/ | | | client-side REST terminus behavior.
* Demoting the "file does not exist" log to debug from noticeLuke Kanies2007-09-251-1/+1
|
* Renaming the 'Puppet::Util::Config' class toLuke Kanies2007-09-226-11/+11
| | | | | | | 'Puppet::Util::Settings'. This is to clear up confusion caused by the fact that we now have a 'Configuration' class to model host configurations, or any set of resources as a "configuration".
* Merge branch 'configurations' into indirectionLuke Kanies2007-09-225-145/+55
|\ | | | | | | | | | | | | | | | | Conflicts: lib/puppet/defaults.rb lib/puppet/indirector/facts/yaml.rb spec/unit/indirector/indirection.rb spec/unit/indirector/indirector.rb
| * All tests now pass in this configuration branch, which meansLuke Kanies2007-09-222-4/+6
| | | | | | | | | | | | | | | | it's time to merge it back into the indirection branch. Considering that this work was what drove me to create the indirection branch in the first place, i should now be able to merge both back in the master branch.
| * This is basically another intermediate commit. I feel likeLuke Kanies2007-09-171-10/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | I've gone too far down the rabbit hole to turn back now, but the code is clearly getting more centralized around the Configuration class, which is the goal. Things are currently a bit muddy between recursion, dynamic resource generation, transactions, and the configuration, and I don't expect to be able to clear it up much until we rewrite all of the tests for the Transaction class, since that is when we'll actually be setting its behaviour. At this point, Files (which are currently the only resources that generate other resources) are responsible for adding their edges to the relationship graph. This puts them knowing more than I would like about how the relationship graph works, but it'll have to do for now. There are still failing tests, but files seem to work again. Now to go through the rest of the tests and make them work.
| * The whole system now uses Configuration objects instead ofLuke Kanies2007-09-152-132/+47
|/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
* Another intermediate commit. The node and fact classes are now functional ↵Luke Kanies2007-09-124-86/+3
| | | | 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-112-252/+2
| | | | indirector. I have not yet added the tests for the node handlers themselves, which is next.
* Renaming the instance loader method to "instance_load". It was previously ↵Luke Kanies2007-09-102-2/+2
| | | | autoload, which could class with Kernel.autoload.
* Removing extraneous logging from the node handlerLuke Kanies2007-09-101-1/+1
|
* Fixing some broken tests in the master client, and adding a test for #800 ↵Luke Kanies2007-09-062-10/+7
| | | | but it is unfortunately disabled because we cannot realistically fix it using the current design. It will be easy after the REST refactor, though.