| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
|
|
|
|
| |
Up to now, when trying to match with tags:
File<<| tag == 'value' |>>
in fact we were querying parameters. Hopefully all the user tags
are stored in parameters so it was working.
But it wasn't possible to search on auto-tags (like class name).
This patch makes sure searching by tag is done on tags both on the
rails side and the resource side.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
| |
It appears that resources were not tagged with user tag on the
server, which prevents those tags to be persisted as tag in
the storeconfigs.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
I don't know why we imposed the restriction that we shouldn't match
with parameter containing arrays in exported mode.
That doesn't seem right, as the produced rails query works fine with
arrays.
Note: the user tags are not stored in the rails database except under
the special resource parameter tag. This also doesn't seem right.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mongrel puppet code uses REMOTE_ADDR to set the ip address which will
be use to authenticate the client access.
Since mongrel is always used in a proxy mode with Puppet, REMOTE_ADDR
is always the address of the proxy (usually 127.0.0.1), which defeats
the purpose.
With this changeset, the mongrel code now uses the X-Forwarded-For
HTTP header value if it is passed over the REMOTE_ADDR.
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
|
|
| |
- rename some tests to make their purpose clearer
- add a test for nested predicates
- remove trailing whitespace
|
| |
|
|
|
|
|
|
| |
Change the syntax for match in an onlyif back to using '==' for equality
comparison instead of 'eq' (this was the behavior before 9a2642) and make
operator for inequality '!='.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This includes reworking the get and match commands as well. This change
introduces a few small changes. These are:
1) There can be no ' or " characters around path elements.
2) The context is now only prepended to relative paths. So, if a
path is specified as /foo/bar the context will not be appended. It
will only be appended if it is foo/bar
3) The syntax for array matching in the onlyif is now eq or noteq.
It was == before.
4) The get and set commnands used to concatenate all items at the end
of a string so "set path to some value" would be interpreted as
"set" "path" "to some value". This is no longer supported. The caller
must put ' or " around the "to some value" for it to work"
Cherry-pick of 9a2642 from 0.24.x
Conflicts:
lib/puppet/provider/augeas/augeas.rb
|
|
|
|
|
|
| |
This commit should have no functional effect.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
| |
We often didn't set a value, unless it was true, which
meant that if it had previously been true but was now
false, we didn't fix it.
We also were not always saving modified resources, which
in some cases resulted in work not getting saved.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
This somehow got lost in the conversion from
Parser resources to Puppet resources. We now
copy over the 'exported' value.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
| |
This allows a more fine-grained load-balancing
of the queue, which makes it easy to spin up
multiple puppetqd instances and process the
queues faster.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
requires certificate serial number to be strictly positive.
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
| |
This method name clashed with Puppet::Indirector::Envelope#expired?,
and its name wasn't actually very appropriate.
The new method name is 'dependent_data_expired?'.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
This is just a simple call to Puppet.use in the puppetd
setup method.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
We weren't correctly propagating options through
to the Configurer instance.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
All of the settings were there, we just weren't doing anything
about them.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
The problem was that some defaults were nil but had
to be 'false', because xmlrpc can't serialize 'nil'
as an rpc argument.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
I found some cases where duplicate resources
weren't correctly skipped, but I couldn't get
the test to really demonstrate them.
The code at least is demonstrated to work,
anyway.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
| |
Previously any changed file got loaded; now we only try to
load files that are still present.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It now correctly purges files whether we're recursing
locally or remotely.
*Please* test various scenarios you can think of with
this. I've tested:
* Local recursion with no remote source
* Remote recursion with a source
* Recursion with an extra locally managed file
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
This is the big win, because it causes us to just
skip the whole loading infrastructure, including
skipping looking through the modulepath.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
| |
The cache isn't actually used yet - this just adds
all of the plumbing.
It was found that stat'ing files that didn't exist
could take up to 85% of a run, so this is progress
toward getting rid of those stats.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
| |
There's more caching to add, but this simplifies
the interface to the list of paths and then caches
that list so we aren't constantly searching the
filesystem.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Caching the module path (because we check which
directories exist, and this method can get called
often), and the complete list of modules.
The cache ttl uses the filetimeout, which defaults to
15 seconds.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
| |
Previously you had to have an Expirer, but now
you can declare a TTL for a cached attribute
and it will be expired automatically when the
cached value is older than the ttl.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
Apparently the stomp client is really unhelpful with
failures; this attempts to provide at least a bit
more information.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The main goal of this refactor is to tell the client to
be resilient to failures (configured at initialization time),
and to send all messages as persistent messages (configured
for each message).
In the process, the client now parses the queue source URI
and handles each argument separately. The tests are more
thorough, also.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
We previously manually slept, but this uses
the queue client to handle keeping the process running,
by just joining all running threads.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This changes the behaviour of template searching a bit -
we previously usually returned a file name, whether the template
existed or not. Now we only return a path if it
exists.
Refactoring a few of the the tests for TemplateWrapper, also.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
| |
It's set to 'only' instead of 'local'.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, when you created a module you had to specify
the path. Now Module instances can use the module path
to look up their paths, and there are methods for determining
whether the module is present (if the path is present).
Also cleaned up the methods for figuring out what's in
the module (plugins, etc.).
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
|
|
| |
The Module class had a bunch of code for finding
manifests and templates even when not in a module,
and it complicated the class unnecessarily. This
moves that code to a new, hackish-but-sufficient
module for just that purpose.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
|
|
|
|
| |
We weren't splitting on whitespace, which is necessary
since the settings don't support arrays but files
expect them.
Signed-off-by: Luke Kanies <luke@madstop.com>
|
|
|
|
| |
Signed-off-by: Brice Figureau <brice-puppet@daysofwonder.com>
|
|
|
|
| |
defined
|
|
|
|
|
|
|
| |
"user doesn't exit" error appeared once again after the changes which were
applied in order to fix #2004.
Validation must only check attributes presence, not their value.
|
|
|
|
|
|
|
|
|
|
|
| |
I *swear* I wrote tests for the daemon, but I
can't find them in any of my branches so I rewrote
them.
In the course of writing them, I also fixed the
usage of Daemon.
Signed-off-by: Luke Kanies <luke@madstop.com>
|