Age | Commit message (Collapse) | Author |
|
@keymone added information on how to reproduce his issue, so here's the
test case that would fail without his change.
|
|
Type updates
|
|
|
|
Prior to this commit, due to a bug in the exists? method in the
file_line provider, match_for_absence didn't work as described (or
at all really). Update the exists? logic so that match_for_absence
works as described.
Additionally add a unit test to prevent regressions and update the
documentation for the parameter to reflect the fact that it is
ignored when `ensure => present`.
|
|
|
|
This is the idiomatic version of #634, and also addresses
the test failures.
Original-Fix-By: Michiel Brandenburg <michiel@silverstreet.com>
|
|
When validate_string is called via the Puppet 4 deprecation wrappers
from deprecation_gen (introduced in 970852d), `undef` is passed as `nil`
where it was previously passed as `''` from the Puppet 3-style function
API.
This change explicitly permits a `nil` value in validate_string, and
adds a test case to `is_string` which also accepts the same.
Fixes test failures in apt, concat etc:
Error while evaluating a Function Call, nil is not a string. It looks to be a NilClass at apt/manifests/source.pp:23:3 [..]
# ./spec/fixtures/modules/stdlib/lib/puppet/parser/functions/validate_string.rb:34:in `block (2 levels) in <module:Functions>'
# ./spec/fixtures/modules/stdlib/lib/puppet/parser/functions/validate_string.rb:32:in `each'
# ./spec/fixtures/modules/stdlib/lib/puppet/parser/functions/validate_string.rb:32:in `block in <module:Functions>'
# puppet-4.7.0/lib/puppet/parser/functions.rb:174:in `block (2 levels) in newfunction'
# puppet-4.7.0/lib/puppet/util/profiler/around_profiler.rb:58:in `profile'
# puppet-4.7.0/lib/puppet/util/profiler.rb:51:in `profile'
# puppet-4.7.0/lib/puppet/parser/functions.rb:167:in `block in newfunction'
# ./spec/fixtures/modules/stdlib/lib/puppet_x/puppetlabs/stdlib/deprecation_gen.rb:13:in `block (2 levels) in deprecation_gen'
|
|
|
|
|
|
|
|
Add deprecation warnings to remaining validates
|
|
|
|
|
|
Ensure validate functions use Puppet 4 deprecation
|
|
|
|
Refactor dig44 function
|
|
* validate_legacy now accepts undef values
* update the TypeMismatch message to include the original validate function name
* only notice, not warn, on newly allowed values
* changed previous_validation to function_name to avoid confusion with the function of the same name
* use deprecation() instead of warn(), when hitting a deprecated value
* prepare the tests and function for MODULES-3735
* rewrite validate_legacy tests to use new rspec-puppet
* move validate_re deprecation to puppet4 only
* adapt validate_re_spec
|
|
|
|
Deprecation function to be mutable in all cases
|
|
|
|
|
|
The current implementation of the dig44 function has the
following problems:
* Doesn't recognise Puppet4's :undef value as an empty value
and doesn't return the default value.
* Doesn't make a different between false and nil value
and returns the default value for a non-empty false value
|
|
|
|
(MODULES-3534) Deprecation of ip functions
|
|
|
|
(maint) Switch 3.x deprecation() to use Puppet warning logger
|
|
The deprecation function was calling the `Kernel#warn` function which
prints to stderr, rather than the Puppet logger. This causes problems
for Puppet module tests on Travis CI, which has a cap on the amount of
stdout/err permitted in its logs and also prevents users from finding
the deprecation warnings when running under a Puppet master.
|
|
This updates the test to match the new behaviour in puppet 4.6.0
|
|
|
|
|
|
|
|
|
|
|
|
(MODULES-3529) add deprecation function
|
|
|
|
(MODULES-3568) Move dig to dig44 and deprecate dig
|
|
A new version of dig was introduced in Puppet 4.5.0 that
isn't compatible with the stdlib version of dig. To maintain
backwards compatibility and ensure that tests for stdlib aren't
broken, this patch renames dig to dig44 and adds a deprecation
warning to the stdlib dig function.
|
|
This change more accurately reflects what is being ignored and what's
required as fixtures.
|
|
When replacing the lib/ and manifests/ symlinks in the fixtures with
a proper top-level symlink, puppet 4 starts loading the metadata.json
before loading functions, which confuses these tests. Added more specific
expectations, and provide data for that call.
|
|
|
|
As described in PUP-6422,
ensure_resources('File[/tmp/a]', { owner => undef })
would not actually create the file. This fixes it, and adds tests to prove
it.
|
|
To maintain backwards compatibility, add a delete_regex function instead
of modifying delete itself.
|
|
Add the default value to the "loadyaml" function
|
|
(MODULES-1439) Adds any2bool function
|
|
|
|
Mergeback 4.12.x
|
|
* Basically a combination of `string2bool` and `num2bool`
|
|
* Add shell_escape function, shell_join function & shell_split function
|
|
This value will be returned if the is no file
to load or a file could not be parsed.
It's similar to the "parseyaml" function's
default value.
Add the "loadjson" function too
|
|
This spec should verify that substring matches are not removed in the
future
|