| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
Previously, you had to configure whether you wanted the CRL or not,
which resulted in errors all the time when it was configured but
unavailable.
Now, Puppet will always create and try to use it, but you won't
get failures if it's unavailable.
|
| | |
| |
| |
| | |
class.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
We can't have the HttpPool class use the Indirector to see
if it has a cert available, because it might be being used to
try to download one, which would cause it to make an http instance,
which would cause it to... Well, you get the idea.
Adding and fixing a few other tests I ran into on the way.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
...as far as I can tell. The client, however, is broken,
since it used the old http_pool/ssl_support stuff, which
no longer works.
I have to port puppetd over to using the new ssl stuff,
then I'll at least be able to verify that the master can
still speak xmlrpc.
|
| | |
| |
| |
| |
| | |
It uses an instance of SSL::Host for getting its certificate
and ssl store.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
responsibilities to the SSL::Host class.
I was previously saving invalid CRLs unless they'd had a revocation
done in them; this commit fixes them so that they're always valid.
Also, I've added to SSL::Host the ability to generate a valid
SSL Store, suitable for validation. This is now used by
Webrick and can be used by the http clients, too.
This should have been two commits, but I'm kind of down the
rabbit hole ATM.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
The code is much cleaner, and it seems to be mostly
functional, but we have to pick a strategy for signing
the host's certificate on first startup. Also, I haven't
actually done end-to-end testing yet, which needs the certs
working first.
|
| | | |
|
| | |
| |
| |
| |
| | |
This provides the backward compatibility for webrick,
and only Mongrel is left.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
This provides the interface for configuring backward compatibility
in the new-style server code. It requires a completely different
configuration step, in that REST and xmlrpc handlers are configured
separately, rather than using the same handler names, but this was
considered less evil than having a large abstraction layer for specifying
how the handlers are related.
|
| | |
| |
| |
| |
| | |
Now I just need to get xmlrpc working alongside REST in
both mongrel and webrick.
|
| | | |
|
| |\|
| |
| |
| |
| |
| | |
Conflicts:
bin/puppetca
|
| | | |
|
| | |
| |
| |
| |
| | |
ssl. The tests can't be completed until the certificate work
is all done.
|
| |\|
| |
| |
| |
| |
| | |
Conflicts:
spec/unit/network/server.rb
|
| | |
| |
| |
| | |
REST save functionality
|
| | |
| |
| |
| | |
in that area now need to be updated.
|
| | |
| |
| |
| | |
Refactored specs to put some of the lower-level find/save/search/destroy unit tests under their own contexts.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| | |
| |
| |
| | |
legacy networking code; it was a mistake to include stubbed support for it in the new code); removing
|
| |\| |
|
| | |
| |
| |
| |
| |
| | |
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.
|
| |\|
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
install.rb
lib/puppet/defaults.rb
man/man8/puppet.8
|
| | |
| |
| |
| |
| |
| |
| | |
There is now a constant in Puppet::Network::HttpPool that will
disable or enable this feature, but note that we determined
that it can cause corruption, especially in file serving (but
it's client-side corruption).
|
| |\| |
|
| | |
| |
| |
| | |
Some minor refactoring, pulling repeated setup up to 'before'
|
| |\| |
|
| | |
| |
| |
| |
| | |
from the filesystem and failed when those keys
were unreadable.
|
| |\ \
| |/
|/| |
|
| | |
| |
| |
| | |
referenced by Puppet::Network::Server
|
| | |
| |
| |
| | |
since it didn't work and is now unnecessary.
|
| | |
| |
| |
| |
| |
| |
| |
| | |
a central module responsible for managing the http pool
(Puppet::Network::HttpPool), and it also handles
setting certificate information. This gets rid of
what were otherwise long chains of method calls,
and it makes the code paths much clearer.
|
| | |
| |
| |
| |
| | |
a new connection is requested, and closing all connections
at the end of each run.
|
| | | |
|
| |/ |
|
| | |
|
| |
|
|
| |
different version of ruby
|
| |
|
|
|
|
|
| |
http://theshed.hezmatt.org/mattshacks/puppet/_patches/puppet-0.23.2/.
There are still a few that haven't made it in, notably those related
to the plugins module, which I'm planning on integrating separately.
|
| |
|
|
|
|
|
|
| |
resources. These are commits:
c19835ce9f8a5138b30a1a32ca741c996b0916d2
9290cc89a2206fb5204578f8e91208857a48b147
ffb4c2dbc7314b364d25e4f7be599ef05b767b44
|
| |
|
|
|
|
| |
At this point, I'm holding the experiment until after the release,
so I'm committing this for now and will take it back up after 0.24.0
is out.
|
| |
|
|
|
| |
added to the configuration by the master client, rather than
by the creating types.
|
| |
|
|
|
|
|
|
|
|
| |
references to resources. It deprecates the class-level
[] and []= methods, used for so long to provide closure
behaviour but now unnecessary with the node configuration's
ability to function as a resource container.
All of the spec tests pass, but there is much to do to make
the test/ tests pass, I expect.
|
| |
|
|
|
|
|
|
|
| |
from the server. The real problem was getting all of the validation
done before any caching, which required a good bit more refactoring
than I expected.
In actuality, this commit is relatively small even though it covers
many files; most of the changes just make the code clearer or shorter.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Puppet specs.
Created a spec/lib/monkey_patches/ directory for holding patches to RSpec functionality.
Extraced 'confine' and 'runnable?' support from the local copy of RSpec (spec/lib/spec/) and now load them from the monkey_patches/ directory.
Fixed a bad include in one of the specs.
Made it possible for the gem-installed spec binary (which autotest calls) to be used with Puppet.
Imported the Autotest::Rspec class, created a PuppetRspec autotest class, added a discovery.rb file for autotest to pick these up.
Autotest still has the following problems:
* it needs to be run with the proper include path:
% ruby -I spec/lib/ `which autotest`
* the patterns in our custom autotest handler (puppet_rspec) aren't yet fully specified (they
only recognize changes in our spec files, not changes in the puppet libs
which they are testing)
|
| |
|
|
| |
exception text is passed back via REST.
|
| |
|
|
| |
handlers. Refactor request building in REST handler specs.
|
| | |
|
| |\
| |
| |
| |
| |
| | |
Conflicts:
spec/unit/indirector/indirection.rb
|