summaryrefslogtreecommitdiffstats
path: root/lib/puppet
Commit message (Collapse)AuthorAgeFilesLines
...
* Fixishing some pending tests, including filling inLuke Kanies2008-04-111-2/+2
| | | | the connection information.
* Making the changes necessary to get the REST supportLuke Kanies2008-04-111-8/+8
| | | | | to work with the current state of the indirection work, including using a request object and an expiration date.
* The 'destroy' method in the indirection now returnsLuke Kanies2008-04-111-2/+2
| | | | | the results of destroying, so they can return true or false.
* fill out specs for network_* methods; refactor lowest-level network hooksRick Bradley2008-04-111-4/+8
|
* adding rest_connection_details helper to Indirector::REST -- will need to be ↵Rick Bradley2008-04-111-0/+5
| | | | overridden to lookup the real connection details
* removed a debugging helper from the Indirector::Rest#save methodRick Bradley2008-04-111-3/+1
|
* adding REST save support, with integration tests. A handful of unit tests ↵Rick Bradley2008-04-112-18/+21
| | | | in that area now need to be updated.
* disabling caching for Puppet::Indirector::Indirection as it was causing ↵Rick Bradley2008-04-111-1/+0
| | | | hella problems with testing save without caching; judging my luke's blog this is going to be rewritten somehow anyway
* work-in-progress; playing with refactoring network_* methods inside ↵Rick Bradley2008-04-111-2/+11
| | | | Indirector::REST
* Added support for destroy/DELETE over REST (including units & integrations ↵Rick Bradley2008-04-111-8/+27
| | | | | | | | on both webrick & mongrel). Added pending specs for the trivialities in the REST network_fetch and network_delete methods. Refactored YAML exception detection out into a private helper method.
* making search work over REST, w/ unit & integration specsRick Bradley2008-04-112-4/+2
|
* unit specs and implementation for Indirector::REST#search methodRick Bradley2008-04-111-0/+8
|
* Make mongrel happy like WEBrick.Rick Bradley2008-04-112-7/+4
| | | | Refactored specs to put some of the lower-level find/save/search/destroy unit tests under their own contexts.
* exceptions on remote end now properly passed to local end via REST and ↵Rick Bradley2008-04-111-1/+1
| | | | re-raised (integration-tested)
* Much larger commit than I would like to land at once. This is all ↵Rick Bradley2008-04-115-24/+42
| | | | | | | | | | | | | | | | | | | | | REST-related code. Two specs are failing related to how Mongrel is initialized for REST; will fix those shortly. REST indirector now supports find, with deserialization. Network code in indirector now. Will still need to un-hardwire address/port for outbound connections. Will still need to urlencode path parameters. Code for search, destroy, update is coming, should be similar to find. Reworked how the Handler module is used. Needed to be included, rather than inherited. Needed to sidestep initializers for actual web servers (webrick, mongrel), needed to be possible to have handler-including class be used as a class (aka servlet) instead of as an instance. Webrick handler registration is now abstracted to "above" the servlet. Provided a #model method to use instead of @model in handler module. This allows neutering during testing. Brought class_for_protocol up into http/webrick class as a (tested) class method. Integration tests for rest indirection. Split server integration tests into mongrel and webrick tests. Got Node/REST working properly wrt the crazy-ass autoloader thing. We're now actually passing traffic w/ webrick, fwiw.
* fixing Puppet::Node::REST class name to work with autoloader inflection ↵Rick Bradley2008-04-111-1/+1
| | | | (Puppet::Node::Rest), so we can do Puppet::Node.terminus_class = :rest
* This is the first version where mongrel and webrick are reliably startable ↵Rick Bradley2008-04-116-19/+44
| | | | | | | | | | | | | | | | and stoppable via Puppet::Network::Server. Added a network/server integration spec, testing startup, shutdown, reachability, and collision of webrick and mongrel servers in the new network code. Converted Puppet::Network::HTTP::Handler class to a module, as mongrel Handler should be subclassed; converting subclasses to include the module instead. Mongrel will actually stop if you .stop it, graceful_shutdown didn't seem quite so reliable. Webrick requires running in its own Thread to avoid hanging the entire process; this requires introduction of a Mutex to make things safe. We're only supporting the REST protocol. Made this explicit. Fixed http server setup args, w/ specs, ah the glory of integration testing.
* the indirector will not serve xmlrpc (this is the responsibility of the ↵Rick Bradley2008-04-114-12/+0
| | | | legacy networking code; it was a mistake to include stubbed support for it in the new code); removing
* removing obsolete TODO commentRick Bradley2008-04-111-1/+0
|
* puppet-compliant indentationRick Bradley2008-04-111-22/+22
|
* Resources now return the 'should' value for properties fromLuke Kanies2008-04-111-7/+3
| | | | | | | the [] accessor method (they previously threw an exception when this method was used with properties). This shouldn't have any affect functionally; it just makes the method equivalent to 'should' for properties, but it works for all attribute types now.
* Modified the 'master' handler to use the Catalog class toLuke Kanies2008-04-114-218/+11
| | | | | | | | | | compile node configurations, rather than using the Configuration handler, which was never used directly. I removed the Configuration handler as a result. Modified the 'master' handler (responsible for sending configurations to clients) to always return Time.now as its compile date, so configurations will always get recompiled.
* Fixed #1184 -- definitions now autoload correctly all of the time.Luke Kanies2008-04-101-2/+6
|
* Removed the code from the client that tries to avoid recompilingLuke Kanies2008-04-101-56/+2
| | | | | | the catalog. The client will now always recompile, assuming it can reach the server. It will still use the cached config if there's a failure.
* Fixing #1173 -- classes and definitions can now have the sameLuke Kanies2008-04-101-1/+1
| | | | name as a directory with no failures.
* Fixing the expire method (it wasn't using a requestLuke Kanies2008-04-102-3/+13
| | | | | | internally), and fixing the Facts class so it auto-expires any associated cached nodes when facts are saved.
* Moved the request creation into the IndirectionLuke Kanies2008-04-102-17/+51
| | | | | | class instead of the Indirector module. Also, added an 'expire' method to the indirector, so there's an easy way to expire cached instances.
* Making the log messages around caching better.Luke Kanies2008-04-081-3/+3
|
* Ported the rest of the indirection terminuses over toLuke Kanies2008-04-089-69/+21
| | | | expecting requests instead of having a random interface.
* Intermediate commit.Luke Kanies2008-04-0811-107/+94
| | | | | | | | | | | | | | | | | This commit adds a Request instance into the indirection, pushing it all the way to the terminus instances. It's a big commit because it requires modifying every terminus class. There are still some thorny design issues. In particular, who should be responsible for making the request object? I've tried having both the indirection class and the Indirector module creating it, and both have their issues. Also, the Catalog class previously allowed passing Node instances directly to the find method, which is now no longer possible because the Request class would treat the node as the instance being found. We need the request class to have two modes, one when it's passed an instance and one when it's passed a key.
* Fixing some tests that were failing because new base typesLuke Kanies2008-04-082-0/+6
| | | | | were added to Naginator, but no new related resource types were added.
* Adding the ability for indirection requests to be createdLuke Kanies2008-04-081-2/+9
| | | | with instances instead of just keys.
* Fixing an errant commentLuke Kanies2008-04-081-1/+1
|
* Fixing the tests that were failing because of the useLuke Kanies2008-04-081-2/+4
| | | | of the indirection request object.
* Adding a Request class to the Indirection layer. ThisLuke Kanies2008-04-082-55/+52
| | | | | | | | | class is currently only used internally by the Indirection instances, but I expect that I will soon be pushing it to all of the terminus types. I still need to fix a couple of tests that will get broken by this commit.
* Changing how destroy works, just a bit -- it now acceptsLuke Kanies2008-04-083-8/+13
| | | | | the name of the instance to be destroyed, rather than the instance itself.
* Reworking the caching layer to use TTLs instead of versionsLuke Kanies2008-04-081-19/+77
| | | | | | based on timestamps. This just modifies the indirection class itself, there is still some work to do to remove version code from other classes.
* Removing unused code from the file_serving/metadata class.Luke Kanies2008-04-081-9/+0
|
* Adding an envelope module to handle indirected instanceLuke Kanies2008-04-081-0/+13
| | | | expiration.
* Changing the default environment to production.Luke Kanies2008-04-081-1/+1
|
* Adding validation to the user type to confirm that theLuke Kanies2008-04-081-0/+3
| | | | | group list does not contain any commas. This seems to be a common problem.
* Extend workaround from 56aad69f8cdf8b0b08fdb7985014986223fa4455 to not only ↵Andreas Rogge2008-04-032-9/+15
| | | | | | | | | fix UIDs but also GIDs Fixes #1169 Fixes #804 (workaround was probably incomplete, as required changes in lib/puppet/util/posix.rb were missing) Signed-off-by: Andreas Rogge <a.rogge@solvention.de>
* Changed some non-standard Ruby locations to env ruby shebangsJames Turnbull2008-04-041-1/+1
|
* Fixes debian service enabled/disable issue as detailed in #1161.James Turnbull2008-04-031-1/+1
|
* Merge commit 'turnbull/0.24.x' into 0.24.xLuke Kanies2008-03-312-2/+9
|\
| * Updates to rrdgraph documentationJames Turnbull2008-04-011-2/+4
| |
| * Better fix for #1020James Turnbull2008-04-011-0/+5
| |
| * Revert "Added updated fix for #1020"James Turnbull2008-04-011-5/+1
| | | | | | | | This reverts commit 4f8df9803a9ad2f31d3e86418732a230b5cee3f3.
| * Merge branch '0.24.x' of git://reductivelabs.com/puppet into 0.24.xJames Turnbull2008-04-011-1/+1
| |\
| * | Added updated fix for #1020James Turnbull2008-03-311-1/+5
| | |