| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
Signed-off-by: John A. Barbuto <jbarbuto@corp.sourceforge.com>
|
|
|
|
|
|
|
|
| |
The #2627 fix was modifying nodename in case of string nodename, but
was removing '_'. Since underscores is a valid character in a class
name, we now allow it.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is not the real fix. It is just an hot-fix to limit
the issue.
The issue is that the lexer regexes have precedences over simple
'/' (divide).
In the following expression:
$var = 4096 / 4
$var2 = "/tmp/file"
The / 4... part is mis-lexed as a regex instead of a mathematical
expression.
The current fix limits regex to one-line.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Since required_features can (and frequently does) return a single
item instead of an Array, the error message needed to be more robust.
The tests were not specific enough to catch the fact that an error
was being raised in the generation of the error, so a more specific
test was added and the required_features accessor test was beefed up
a little.
Signed-off-by: Markus Roberts <Markus@reality.com>
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The runit provider was left broken after some work on daemontools
on which runit is based, and #2640 didn't override the
restart command, so daemontools once was called.
This patch aims to fix this provider and bring it on par with
daemontools.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
| |
I couldn't find a way to make it compatible with
earlier clients, so the docs specify that
it doesn't work with them, and it helpfully fails.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
| |
We broke some cases of metaparam compatibility in 0.25.
Most of it was pretty esoteric, but one thing that wasn't working
was relationship metaparams specified on defined resources.
This adds a compatibility method for older clients.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
We need to be able to do compatibility testing, and this
allows us to do so.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
| |
This allows us to search for a cert, and we use the searched-for
term as the cert name (for the wrapper, not the actual cert object),
rather than the real cert name.
This allows us to use symbolic names like 'ca', as we're currently doing.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
It was hanging reading stdin because no code had
been supplied.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
When we are checking if a node exists before creating a new one
we were also trying to match with regex node names, finding matches
where in fact there is no equality.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
| |
Removed the array wrapping of values for JSON serialization, and
the associated test.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
| |
Due to an incorrect tests, those providers weren't enabling themselves
when starting, thus failing to create the symlink necessary for them
to run.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
| |
We're converting the regex to a straight name to be used as the node
class name which later on will be used as tag.
It was possible to generate an invalid tag name (containing leading
or successive dots).
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This patch rolls up the changeses discussed on the list & the ticket
The fqdn_rand now takes any number of additional arguments of any
type that has a string representation (typically integers or strings)
and concatenats them on to the salt.
The tests have been adjusted to reflect this.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Allow the first argument to the regsubst() function be an array,
and perform regexp replacement on each element of the array in
that case.
This patch also adds more error checking to give better error
messages to the user when given bad parameters.
Signed-off-by: Thomas Bellman <bellman@nsc.liu.se>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was an API compatibility problem with mongrel's HTTPResponse.start()
method between Mongrel 1.0.x and 1.1.x (the number of parameters changed).
The older version does not provide the option to set the response header
message which was used (redundantly with the response body) to return the
error message when the HTTP response was signaling an error.
In order to suport the older version the call was wrapped with a fallback
and the coresponding code in the other rest implementations was adjusted
to always send the error message in the response body. Then the rest
terminus was adjusted to pull the message from the response body (if it
is present) rather than from the header (which is only used as a fallback
for dealing with older puppetmasters), and the tests were augmeted to
verify this behaviour.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Partial refactoring to clean up the case in the ticket (host
name containing dots, begining and ending with a digit, was
mistaken for an IP address) and a range of related edge cases.
Stopped short of a full refactoring (put off to 0.26 as #2623)
Added tests for numerous edge cases.
This also fixes the issue raised in #2570.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
|
|
|
|
| |
This adds stubs so that the service script used by redhat appears
to exist while the tests are running, regardless of the operating
system being used to test.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
| |
|
|
|
|
| |
Luke happy.
|
|
|
|
|
|
|
|
|
| |
the redhat "service" wrapper script). Removes special case handling of
non-zero exit code in redhat (base already did this) and centralizes
scattered @resource[:has_____] checks. Tests that proper versions of
each are called and one level of fallbacks.
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>
|
|
|
|
| |
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>
|
|
|
|
|
|
|
|
|
| |
Ticket #2511 comprises two distinct problems with very similar
symptoms. This patch addresses one of them, the test failures
which result from spec/units/util/backups.rb directly requiering
type/file.
Signed-off-by: Markus Roberts <Markus@reality.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>
|
|
|
|
|
|
|
|
|
|
|
| |
We had a case where an expectation could be triggered
before the thread finished, in which case it was marked
as a failure.
We just stub the Thread.new to avoid creating a "real"
thread, thus skipping the race condition.
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 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>
|
|
|
|
| |
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>
|
|
|
|
| |
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>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
Removed two failing tests added in the process of reproducing #2493
because they enforced case-insensitivity in excess of that provided
by 0.24.8 and thus contrary to user expectations.
Signed-off-by: Markus Roberts <Markus@reality.com>
|
|
|
|
| |
enabled? status
|