| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| | |
Facter to load facts there if a new enough version of
Facter is used.
|
| |
| |
| |
| | |
This fixes #1179.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| | |
The server is actually serving REST, but the client can't use
it until we resolve the format and security issues that REST
hasn't yet tackled.
|
| |
| |
| |
| | |
defaults section, rather than the puppetd section.
|
| |
| |
| |
| |
| | |
Now I just need to get xmlrpc working alongside REST in
both mongrel and webrick.
|
| |
| |
| |
| |
| | |
This flushed out some problems, and things mostly look good
now, but I don't think we're quite there yet.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is a kind of weird design situation. For instance, we've got a
collection of certificates in the :certdir, but then there's a special
CA certificate off by itself. Rather than build a whole separate
infrastructure for managing those separate files (cert and key, at least),
I decided to add special support for specifying where to find the CA-specific
bits, and then code for handling them when necessary.
This requires that we have a standard way of knowing whether we should be
managing the CA bits or normal host files. The Puppet::SSL::Host class now has
a 'ca_name' method that returns the string we're using for the CA name; this
name is currently 'ca'. We have to use a name, because the name is the only
thing that all methods have access to (e.g., when trying to 'find' the right
cert, we only have the name available).
What this means is that if you want access to the CA key or cert, then create
a Puppet::SSL::Host instance with the name 'ca'.
You'll still get the CA cert created with the host's :certname; it will just
be stored in a different location.
|
|/
|
|
| |
classes, finally including the certificate requests.
|
| |
|
|
|
|
|
| |
server now that it's in the :puppetmasterd section rather than
a separate :yaml section.
|
| |
|
|
|
|
| |
When :node_name="cert" is specified the 'hostname' fact should be set to the SSL certificate common name instead of the results from facter. I've extended this to also set 'domain' and 'fqdn' since that makes a lot of sense to me. This fixes a regression introduced in SVN#1673
|
|
|
|
|
|
|
|
|
|
| |
The CA serial file was getting owned by root because it was using a different method to write to file
Pulled the readwritelock out of lib/puppet/sslcertificates/ca.rb into lib/puppet/util/settings.rb
Refactored write, writesub and readwritelock a bit to reuse code
(write and readwritelock both call writesub)
Added a mode to :serial in lib/puppet/util/defaults.rb
|
|
|
|
|
| |
section. This should keep the yamldir from being created
on clients.
|
|
|
|
|
| |
correctly ignored, and you now use 'false' instead of 'none'
to explicitly ignore them.
|
| |
|
| |
|
|
|
|
| |
since it didn't work and is now unnecessary.
|
|
|
|
| |
not by puppetmasterd.
|
|
|
|
| |
requested in #960.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
changelog:
Modifying the behaviour of the certdnsnames setting. It now defaults
to an empty string, and will only be used if it is set to something
else. If it is set, then the host's FQDN will also be added as
an alias. The default behaviour is now to add 'puppet' and
'puppet.$domain' as DNS aliases when the name for the cert being
signed is equal to the signing machine's name, which will only
be the case for CA servers. This should result in servers always
having the alias set up and no one else, but you can still override
the aliases if you want.
|
|
|
|
| |
set the 'node_terminus' setting to 'exec'.
|
|
|
|
| |
validate the server certificate, honoring CVE-2007-5162.
|
|\
| |
| |
| |
| |
| | |
Conflicts:
CHANGELOG
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mount, fixing #891. The patch was ported to the current
code by David Schmitt, I applied the rest of Matt's
patches, and I then fixed all of the code so that the
tests passed.
The primary change I had to make to the patch was reenabling
host expansion in paths -- his patch had disabled it.
|
| |
| |
| |
| |
| |
| |
| | |
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.
|
|/
|
|
| |
20070913010926-6856b-eb64be3b5169b7af674388124b406a1db7470880.patch from womble -- More restrictive permissions on some puppet-related directories
|
|
|
|
| |
and making it tunable, but it has not gone away yet.
|
| |
|
|
|
|
| |
certname aliases.
|
|
|
|
| |
you set an environment.
|
|
|
|
| |
and you have to specify the valid environments for your site.
|
|
|
|
| |
modifications to fit coding style.
|
|
|
|
|
|
| |
environment
lib/puppet/defaults.rb:10:in `expand_path': couldn't find HOME environment -- expanding `~/.puppet' (ArgumentError)
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
to requiring explicit configuration. This means that if
you as an application developer want to use a different indirection
terminus then you have to specify it; something like:
Puppet::Node.terminus_class = :ldap
Caches use the same kind of configuration:
Puppet::Node.cache_class = :memory
Accordingly, I've removed the existing setting definitions
from the defaults.rb.
|
|\
| |
| |
| |
| |
| |
| | |
Conflicts:
lib/puppet/defaults.rb
lib/puppet/dsl.rb
|
| | |
|
| |
| |
| |
| |
| | |
The default behavior of 'verbose' and 'debug' no longer cause puppetd and
puppetmasterd to not daemonize.
|
|/
|
|
| |
created for puppetmasterd.
|
|
|
|
|
|
|
|
|
|
|
| |
checksum interaction behaves as I expect when
interacting with the file terminus.
I've also changed how files and checksums behave a bit.
Files now create model instances with the content as
the only argument during initialization, and checksums
now calculate their checksums rather than having them passed
in.
|
|
|
|
|
|
|
| |
'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".
|
|\
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
lib/puppet/defaults.rb
lib/puppet/indirector/facts/yaml.rb
spec/unit/indirector/indirection.rb
spec/unit/indirector/indirector.rb
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
been migrated over to the new organization. Where we
would have previously had an 'ldap' node terminus at
puppet/indirector/node/ldap.rb, we would not have it at
puppet/indirector/ldap/node.rb, and it would be a subclass
of puppet/indirector/ldap.rb.
These are called terminus classes, and there are now three
categories of them: The base class itself, abstract classes
that provide most of the functionality (e.g., the ldap and
yaml classes), and the classes themselves that implement
the functionality for a given model like Node or Facts.
The base terminus class handles auto-loading any of these
classes from disk.
|
|/
|
|
|
|
|
|
|
|
|
| |
and is tested, so now it is time to migrate the
Facts YAML Terminus to use the <terminus>/<indirection>
file structure instead of <indirection>/<terminus>.
In this case, that means that I am moving the functionality
in lib/puppet/indirector/facts/yaml.rb to
lib/puppet/indirector/yaml/facts.rb, and the class in that
new file will subclass Puppet::Indirector::Yaml.
|
| |
|
|
"defaults.rb", since I am going to create a separate "configuration" top-level directory to contain all of the classes related to managing the configuration for a given node.
|