| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
The caching of the TypeCollection in Puppet::Node::Environment would cause
parse errors to occur (and be reported) only once and never again, until
the file had changed on disk. This would also cause empty catalogs to be
sent down to the agents further hiding the problem.
Now, when a file fails to parse, it will be re-parsed every time on every
following compilation, causing the parse error to be reported every time,
and preventing sending down empty catalogs to agents.
Paired-with: Nick Lewis <nick@puppetlabs.com>
|
|
|
|
|
|
|
|
| |
Resources were triggering their subscribing/notified resources when they
failed, which is incorrect. Now, events are only queued if the resource was
successful.
Paired-With: Max Martin
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added support for the new disable API to update-rc.d and
added spec tests to check this functionality. This change was made
because in versions of sysv-rc >= 2.88, 'update-rc.d stop' is broken and
actually enables the service.
We only changed the disable case as the enable case still works on
systems which use sysv-rc 2.88 or greater (atm, only Debian Lenny). We
wanted to change as little as possible because update-rc.d prints a
message stating that the new enable/disable API is unstable and may
change in the future.
Paired-with:Matt Robinson, Jacob Helwig
|
|\
| |
| |
| |
| | |
* tickets/2.6.x/6256:
Fixed #6256 - Creation of rrd directory.
|
| |
| |
| |
| | |
Added :metrics to the settings used by the master
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The watch_file mechanism would refuse to monitor paths to files that
didn't exist. This patch makes it possible to watch a file that hasn't
been created yet, so when it is created, you manifests will get
reparsed.
Backported this change to 2.6.x
Paired-With: Jacob Helwig <jacob@puppetlabs.com>
|
|\ \ \
| |/ /
|/| | |
|
| | |
| | |
| | |
| | |
| | | |
Reviewed-By: Nick Lewis
Reviewed-By: Pieter van de Bruggen
|
|\ \ \
| | | |
| | | |
| | | | |
into 2.6.next
|
| | |/
| |/|
| | |
| | |
| | | |
used to be at info, so you had to run the master on verbose to
see it an ENC was trying to declare a class that could not be loaded.
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
In new versions of Ruby, negative timeouts are unsupported. So munge negatives
to zero in the parameter.
Reviewed-By: Jacob Helwig
|
|\ \ \
| | | |
| | | |
| | | |
| | | | |
* tickets/2.6.x/6562:
Fixed #6562 - Minor kick documentation fix
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
* ticket/2.6.next/6658:
(#6658) Propagate ENC connection errors to the agent
|
| | |/ /
| |/| |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
When the master failed to run the External Node Classifier script it
would log an error on the master, but the agent didn't get back the full
error or the stack trace for it's logs. By raising when there's an ENC
script problem on the master, this causes the error messages to
propagate to the agent.
Paired-with: Jacob Helwig <jacob@puppetlabs.com>
|
|\ \ \ \
| |/ / /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
'feature/2.6.next/4884-an-exec-provider-that-executes-unfiltered-bash-code' into 2.6.next
* feature/2.6.next/4884-an-exec-provider-that-executes-unfiltered-bash-code:
(#4884) Revise new exec tests, add a few more
(#4884) Add an shell provider for execs
(#4884) Fix Test::Unit exec tests
(#4884) Break the exec type out to have a posix provider
(#4884) Add consistent path validation and behavior
(#4884) Add expand_path to requiring the spec_helper
(#4884) Autorequire shared behaviors and method to silence warnings
(#4884) Fix whitespace
(#4884) Get rid of open3 require since it wasn't being used
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Revised a few of the new tests for the exec type and provider to
ensure that they were testing what they meant to, and added in a
couple of new tests.
Reviewed-by:Daniel Pittman
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This makes it possible to use shell builtins when the exec is inline
bash commands.
Paired-with: Max Martin
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This is in preparation for allowing other new providers to handle exec
commands differently.
Reviewed-by: Max Martin and Matt Robinson
|
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Many path parameters were implementing their own inconsistent validation
and behavior. Now those parameters can have a parent class that makes
things a lot more consistent.
Reviewed-by: Matt Robinson and Max Martin
|
| | | |
| | | |
| | | |
| | | | |
Paired-with: Max Martin
|
| | | | |
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
* ticket/2.6.next/5073:
(#5073) Download plugins even if you're filtering on tags
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
When we eval a resource in transaction.rb it was being skipped when
filtering on tags and downloading the plugins. There's a lot of
complicated conditions for whether to skip a resource, but this is a
condensed version of the path that was causing plugins not to be
downloaded.
skip?
missing_tags?
!ignore_tags?
!host_config
The Puppet::Configurer::Downloader creates separate catalogs and applies them
to get custom facts and plugins, so should be setting host_config to false.
Puppet::Util::Settings also sets host_config to false when you call use on
settings, while normal catalog application defaults to true.
Thanks to Stefan Schulte <stefan.schulte@taunusstein.net> for suggesting
the implementation fix.
|
| | | | |
| | | | |
| | | | |
| | | | | |
Reviewed-By: Paul Berry <paul@puppetlabs.com>
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
git://github.com/stschulte/puppet into 2.6.next"
This reverts commit 658bdb72bee3ad664627a71793213e6540afd5cb, reversing
changes made to 4c9bd43bc2f5fde9d86196e8689dced929d39aad.
See comment at http://projects.puppetlabs.com/issues/5605#note-9
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | | |
2.6.next
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The uniqueness_key method of a type or resource object should return a
key that can be used to identify this resource. In fact puppet seldomly
uses this method and instead uses resource[:name] as an identifier.
While this is totally fine for resourcetypes with a single
key_attribute (and resource[:name] returning the namevar), it breaks
things as soon as one creates a type with a composite key (prefetching
for example is broken). To ease the process of replacing calls to
resource[:name] to resource.uniqueness_key, the method uniqueness_key now
just returns name_var if there is only one key_attribute (immitating
self[:name]) and only returns an array of all the values of all the
key_attributes if we have more than one key_attribute.
The resourcehash which is passed to providers in their prefetch method
is now build with uniqueness_key as the hashkey. Because of the new
behaviour of uniqueness_key we hopefully wont break existing providers
while allowing new providers for types with composite keys to implement
correct prefetch methods.
|
| |/ / / /
|/| | | |
| | | | |
| | | | |
| | | | |
| | | | | |
Ensured that withenv properly restores the environment after it runs a block and added testing for the method.
Reviewed-by: Matt Robinson and Daniel Pittman
|
|\ \ \ \ \
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
2.6.next
* ticket/2.6.next/5428-handle-0.25.x-storedconfig-data:
Remove extra trailing whitespace from lib/puppet/resource.rb
(#5428) More fully "stub" Puppet::Resource::Reference for use with storedconfigs
Conflicts:
lib/puppet/resource.rb
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
Paired-with: Daniel Pittman <daniel@puppetlabs.com>
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The Puppet::Resource::Reference class wasn't stubbing enough of the 0.25.x
behavior to satisfy the needs of storedconfigs. Since P::R::Reference,
and Puppet::Resource were merged as part of 2.6.x, we can pretend that
P::Resource is P::R::Reference for the purposes of loading data from
storedconfigs. This should still satisfy the over-the-wire serialization
needs of 0.25.x.
This also changes internal references to @parameters in
Puppet::Resource(::Reference) to go through a parameters method. This
allows us to "initialize" this instance variable lazily, since loading via
YAML bypasses the normal initialize method.
Paired-with: Daniel Pittman <daniel@puppetlabs.com>
Reviewed-by: Markus Roberts <markus@puppetlabs.com>
|
|\ \ \ \ \ \
| |_|_|/ / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This was added while developing in order to benchmark, but wasn't removed
before committing.
Reviewed-By: Jacob Helwig
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | |
| | | | | | | |
2.6.next
Manually Resolved Conflicts:
spec/unit/provider/mount/parsed_spec.rb
|
| | |_|/ / /
| |/| | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
When one wants to use the parsedfile provider for a type with more than
one key_attribute (e.g. a type for entries in /etc/services with name
and protocol as key_attributes) the provider will not store all
key_attributes in property_hash and not all keyattributes will be
visible in the to_line function.
The create method of parsedfile will only put validproperties into the
propertyhash. As result :name and all the other key_attributes will not
be set.
In the flush method however the :name parameter is put in the
property_hash but the method does not handle other keyattributes.
This patch modifies flush to put all key_attributes into the property
hash
(Note: @resource.name is basically just an alias for @resource[:name])
|
|\ \ \ \ \ \
| | | | | | |
| | | | | | |
| | | | | | | |
2.6.next
|
| |/ / / / /
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
The methods [] and []= of type.rb are handling :name in a special way.
When someone wants to access resource[:name] puppet tries to replace
:name with the name_var. If the type has more than one key_attribute
name_var is always returning false so we'll get the error
Resource type <resourcetype> does not support parameter false
This patch doesnt try to substitute :name if we dont have a single
namevar, aka. we have more than one key_attribute
|
| |/ / / /
|/| | | |
| | | | |
| | | | | |
"Where" -> "were." Capitalize "ACL."
|
| |_|/ /
|/| | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
This terminus behaves the same on all supported DB platforms, by performing a
limited portion of its query in SQL, and the rest of the comparison in Ruby.
Its results are consistent with the YAML terminus.
Paired-With: Jesse Wolfe
|
|\ \ \ \
| | | | |
| | | | |
| | | | |
| | | | | |
* ticket/2.6.next/5392:
(#5392) Give a better error when realizing a non-existant resource
|
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
You can reproduce the error with a simple manifest
Bogus_type <| title == 'foo' |>
We used to fail because find_resource_type returned nil and we never
checked if it was nil before calling methods on it.
Reviewed-by: Max Martin <max@puppetlabs.com>
|
|\ \ \ \ \ |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
On Red Hat, Ubuntu, Debian and deriatives the -r flag
allows creation of "system" users with a UID below that
defined in /etc/login.defs.
This commit adds support for a system parameter and a
system_users feature which can be used like so:
user { "foo":
system => true,
ensure => present,
}
This will create a user with a lower UID.
The system parameter defaults to false.
|
|\ \ \ \ \ \
| |_|/ / / /
|/| | | | | |
|
| | | | | |
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This is not necessary because fact values are always strings, and it wasn't
doing the unnecessary job it was expected to do anyway.
|
| | | | | |
| | | | | |
| | | | | |
| | | | | | |
This had been conflating hosts and nodes, when nodes is the most accurate.
|
|/ / / / /
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | |
| | | | | |
There were some warnings and stack traces in the spec output that aren't
necessary.
The only interesting fix is of the message:
lib/puppet/module.rb:79 warning: multiple values for a block parameter (0 for 1)
from lib/puppet/util/logging.rb:30
If you call any form of logging on a module you end calling the file
method on the module just because logging always checks for that method
and calls it if it's defined, but in this case it's not defined in the
way that logging expected so passes the wrong paramters.
The easy solution is just to call logging on Puppet, which makes sense
in this case anyway, and I don't think it's worth a separate ticket to
deal with that logging warning.
Reviewed-by: Nick Lewis <nick@puppetlabs.com>
|
|\ \ \ \ \ |
|