| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
|
|
|
|
|
|
|
|
|
| |
Ruby 1.8.1 can not parse the yanl produced by later versions because
it requires explict type tagging of symbols. This patch adds the
tagging on to later versions so that mixed version instalations can
use yaml.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It was getting cached by Environment instances too early, thus causing some
executables to use the default even when it was overridden.
We're taking the slightly extreme step of clearing the environment
list if any parameter is set, but this is relatively inexpensive and
is the only way to always be correct.
The reason that the environments cache this value at all is that to build
up their module path they have to search through every known module for a lib
or plugins directory, which is then done every time a class is sought in
the language. Caching it saves a *ton* of file accesses.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Puppet::Node::Facts::Rest
|
|
|
|
| |
status/enabled
|
| |
|
|
|
|
|
|
| |
This was obviously resulting in a dep cycle.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
It's now just notice instead of a warning, and it clarifies
that 0.24 clients can't be present.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
We had some stupid errors that were preventing this
from happening; this fixes them and adds an
integration test.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
Before it was undefined, but now we always match
the first defined node.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
| |
The problem was that we were needing to convert
one of the regexes to a string, which wasn't working well.
This adds specific rules for how regexes vs. strings
get compared.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Marc Fournier <marc.fournier@camptocamp.com>
|
|
|
|
|
|
| |
The 'value' passed to on_error in Puppet::Parser::Parser is a hash, and
we only want to print the 'value' key, rather than a flattened string of
the hash.
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
This was broken in the recent refactor around autoloading,
which didn't special-case classes that specified that they
were top-level.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This follows on to the previous commits which made Puppet
resilient to the service user being absent. This just
changes the default owner of all of the cert-related files
to now be the service user, which means that on the server
all of these files will be owned by that user and on
the client, at least when the service user does not exist,
they will be owned by root.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
| |
This gets us most of the way toward fixing #2460 - we can
now have the certificate information owned by the service
user when it's available, thus making it so that puppetmasterd
(not running as root) can read it.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
We otherwise have load-order issues, where this provider tries
to use the facts but they aren't currently autoloaded by default
in Facter.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
We need this knowledge from the Settings class, and it makes
more sense to delegate than to use direct access to the provider.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
We previously allowed the owner and group to be set to
arbitrary values but we never actually used it -- we always
just set them to '$user' or '$group'. This commit changes
the model to allow 'root' or 'service', where 'service'
is converted to the actual service user/group.
This has the potential to have backward compatibility concerns,
because users could have changed the owner/group in puppet.conf,
but the chances of that are fantastically small.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
This isn't really a refactor, just moving code around.
I did some simple method renaming, also.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
| |
For too long we have refused to change users
on Darwin because a long time ago the ruby they
shipped with was really, really broken.
It's been fixed for a while, so this just removes
the restriction.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I'd made changes to the internals of the fileserving
system to fix #2544 (mostly switched from passing
the node around and then calculating the environment to just
passing the environment around), but those changes weren't consistent
throughout the fileserving code.
In the process of making them consistent, I realized that the
plain file server actually needs the node name rather than
the environment, so I switched to passing the request around,
because it has both pieces of information.
Also added further integration tests which will hopefully keep
this from cropping up again.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The checksum function assumed that if the source was present the
metadata (including checksum) was also, and thus that the type of
the checksum could be extracated with a simple RegExp match. When
metadata is nil it returns nil for the source checksum and the
modified function passes this on.
Alternatives would be to default to :md5 or to pass on to checking
the :checksum parameter as if there were no source.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
| |
In the command-line option parsing refactor from 0.24.x the manifest
specification was lost for --parseonly, so site.pp was always used.
This patch adds the parsing back in.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
| |
Signed-off-by: John A. Barbuto <jbarbuto@corp.sourceforge.com>
|
|
|
|
|
|
|
| |
This simplifies who owns what code in these two classes,
and the result should be much cleaner and simpler.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
We had to fix the fileserving plumbing to use the request
environment instead of trying to use the node environment.
This was apparently never fixed after we added the environment
to the URI in REST calls.
There's still a bit of refactoring left to clean up the APIs used
in some of this code.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
enabled? status
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
notes fixes specific issue by eliminating the specal case for
opaque strings which caused them to be strings when everything else
was arrays; adds nots and pending tests where FQDN support could be
added but stops short of a full refactor.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added downcasing into find_or_load (which replaced fqfind) to get
back the old behaviour. Adjusted tests so that they would catch
the problem & confirmed that they fail without the downcasing.
Added tests to confirm the existance of #2493; improved
existing autoload tests (removed inter-test interactions)
and noted (with a TODO) that there was dead code in the
feature loading test; added analogus case sensitivity tests
where apropriate.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was a "There's A Hole In The Bucket" problem caused when trying
to establish a connection to get a certificate before there was
a certificate with which to establish the connection, ad
infinitum. The solution was to test for the presence of the
CA cert as well as the host cert before attempting to use them.
This patch modifies existing tests to pass with the new code (by
stubbing out the additional FileTests) and adds a new test which
catches the original problem.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Even though Puppet never transmist a charset information in its
response/request content-type, some proxy (especially Apache with the
infamous AddDefaultCharset configuration) may add this "incorrect"
information.
This patch makes sure that only the mime-type is used when looking
for the format associated with a response or a request.
The patch also provides a better error message when the client or server
code is fed with a request whose mime-type can not be mapped to a known
format.
It also fixes a typo noticed by the original reporter.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
#2507 contains two issues:
* a crash when we filters-out an unwanted resource which had edges
pointing to it.
* resources are losing their virtuality when they are transformed from
Puppet::Parser::Resource to Puppet::Resource. This means we weren't able
to distinguish anymore between an exported resource collected in the same
node as it was exported and an exported resource collected in another node.
The net result is that we can't apply exported resources that are
collected in the same node because they are filtered out by the catalog
filter (see the commits for #2391 for more information).
The fix is to keep the virtuality of the resources so that we can
differentiate those two types of exported resources. We keep this until
the catalog is ready to be sent, where we filter out the virtual resouces
only, the other still exported ones needs to be sent to the client.
To be real sure, the transaction also skips virtual resources.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Added a random suffex to the temporary file name and verify that
the name is not in use (retry on collison). No additional
tests added as the lifetime of the temporary file is bound by
the routine, making spec driven tests impraticable.
Includes logic to account for dead-end symlinks as well, as per Luke.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
| |
This change will effect all the properties implemented with list.rb
(groups, roles, auths, profiles). The change will match [] values for
should as insync when none exist. (so no more log message)
|
| |
|
|
|
|
|
|
|
|
|
| |
All of the tests were failing because we had a call outside
of any of the tests, just to autoload the constant. Removed
that call and stubbed things so the tests don't run without
json.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
| |
This adds a new function shellquote() which can be used for quoting
arguments in shell commands used in the exec type.
This only supports Unixoid operating systems. Other systems would
likely require some other quoting.
Signed-off-by: Thomas Bellman <bellman@nsc.liu.se>
|
| |
|
| |
|
|
|
|
|
|
| |
provider."
This reverts commit 967eb9f52938d8849b99686bf2c0b9da9a183399.
|
|
|
|
|
|
|
|
|
|
|
| |
We were previously not assuming they had it,
because I figured there were just a couple that didn't.
On closer inspection, none of them did.
The previous commit fixed that, so this commit
fixes the assumption.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
| |
This is for file, line, version, and tags, with the
parameter name added to the tags.
This is mostly so logs generated by the parameters
work better.
Signed-off-by: Luke Kanies <luke@madstop.com>
|