Commit graph

214 commits

Author SHA1 Message Date
Hunter Haugen
4949cfd21c Fix breaking out of .each loop
And some other small formatting fixes that don't belong in this patch.
2014-11-10 16:37:53 -08:00
Travis Fields
c52e262a17 Catch :undefined_variable thrown when Future Parser is enabled with 3.7.x 2014-11-10 16:33:18 -08:00
Morgan Haskel
850297b560 Merge pull request #354 from puppetlabs/4.3.x
4.3.x
2014-11-10 11:10:41 -08:00
Travis Fields
406e9dbda2 Merge pull request #343 from zacharyalexstern/fix_to_bytes
Added correct converstions for PB and EB.
2014-11-07 13:42:48 -08:00
Morgan Haskel
03f0ecd128 Merge pull request #350 from cyberious/modules1413
MODULES-1413 Add ability for member to take numeric objects
2014-11-04 15:29:25 -08:00
Travis Fields
f19aea5a75 MODULES-1413 Ability to for future parser to use member with FixNum types 2014-11-04 14:33:34 -08:00
Travis Fields
35c2dc7ca3 Merge branch '4.3.x' 2014-10-30 10:23:12 -07:00
Travis Fields
6c7da72c0f Fix validate_cmd, previous addition of SystemCallError only works for Puppet 3.7, previous version throw different exception. Wrapping in generic Exception catch all 2014-10-29 20:03:07 -07:00
Travis Fields
12f734476c Merge remote-tracking branch 'origin/4.3.x' 2014-10-29 12:52:52 -07:00
Travis Fields
328aae223f Add proper exception catching of Windows errors when CreateProcess does not succeed 2014-10-29 11:47:57 -07:00
Travis Fields
a6f3f781d1 Merge remote-tracking branch 'origin/4.3.x' back to master 2014-10-28 15:31:37 -07:00
Travis Fields
51f1d574d9 Fix testcases for Future Parser and resolve issue with values_at in assuming that it was dealing with a string 2014-10-28 15:27:24 -07:00
Zachary Alex Stern
9295d0d5ca Added correct converstions for PB and EB.
* We were converting Exabytes to bytes as Petabytes.
 * Updated tests to cover ever unit.
 * Added note that we're going by the old, inaccurate definitions of
   Kilobytes, Megabytes, etc, in that we treat them as powers of 2.
2014-10-28 13:14:06 -07:00
Travis Fields
9dea092979 Merge branch '4.3.x', add tempfile back for resource validate_cmd and validate_augeas 2014-10-24 16:41:05 -07:00
Travis Fields
624ccbd22c add require 'tempfile' to resolve a previously autorequired resource 2014-10-24 16:35:34 -07:00
Travis Fields
f0b207c035 Merge branch '4.3.x'
Conflicts:
	README.markdown
	lib/puppet/parser/functions/has_interface_with.rb
2014-10-24 14:30:01 -07:00
Morgan Haskel
0c0f7e13cd Merge pull request #262 from tremble/MODULES-707
Modules 707
2014-10-09 13:33:06 -04:00
Travis Fields
8ad7f68eca ENTERPRISE-281 fixes issue with has_interfaces and case mismatch causing us not to return some interfaces 2014-10-08 10:14:10 -07:00
Tomas Doran
032f93af1d Fix strict_variables = true 2014-09-22 14:43:27 -07:00
Mark Chappell
23bc7d51bd Re-use existing str2bool code rather than doing a copy and paste 2014-09-22 19:49:50 +02:00
Mark Chappell
e2d7f3bb89 (MODULES-707) chomp() fails because generate() no longer returns a string
We need to use

  unless value.is_a?(String) || value.is_a?(Array)

rather than

  klass = value.class
  unless [String, Array].include?(klass)

because the klass version enforces type checking which is too strict, and does
not allow us to accept objects wich have extended String (or Array).

For example, generate() function now returns Puppet::Util::Execution::ProcessOutput
which is just a very simple extension of String.  While this in it's self was
not intentional (PUP-2306) it is not unreasonable to cope with objects which
extend Strings
2014-09-22 19:49:50 +02:00
Alexander Pánek
6631934df8 Note that also future parser does not work 2014-09-16 19:03:02 +02:00
Alexander Pánek
448e66b8bb Updated docs of validate_string to reflect bug
See: https://tickets.puppetlabs.com/browse/MODULES-457
2014-09-16 17:55:26 +02:00
Hunter Haugen
2ba0e375e2 Merge branch '4.3.x' 2014-08-05 10:55:58 -07:00
Colleen Murphy
85d5eadbab Concatenate arrays without modifying the first array 2014-07-31 11:22:18 -07:00
Travis Fields
64f0ae2269 Increase resilience if lookup var comes back with nil object 2014-06-23 22:47:03 -07:00
Raphaël Pinson
2062f9734b Add private() function 2014-06-11 16:35:32 +02:00
Ashley Penney
0cda858744 Merge pull request #258 from mckern/enhancement/master/camelcasedembools
(MODULES-905) Narrow the confinement in bool2str
2014-05-15 21:48:40 -04:00
Ryan McKern
93c4151edf (MODULES-905) Narrow the confinement in bool2str
Previously, bool2str() accepted a broad array of boolean values and
bare strings, without any attempt to validate that the strings in any
way resembled "true" or "false" (or any of the other values bool2num()
accepts). This commit narrows the input confinement to TrueClass and
FalseClass, which means that bool2str() will only interpolate
strict boolean values now.
2014-05-15 15:01:14 -07:00
Ashley Penney
430d821ad3 Merge pull request #255 from mckern/enhancement/master/camelcasedembools
(MODULES-905) Add bool2str() and camelcase() for string manipulation
2014-05-15 17:03:18 -04:00
Ryan McKern
42743614cb (MODULES-905) Add bool2str() and camelcase() for string manipulation
Python likes to have its constants Capitalized, and the capitalize
function only understands strings... so I shave a yak.

bool2str will convert a boolean to its equivalent string value,
and camelcase extends on uppercase & downcase to convert an underscore
delimited string into a camelcased string.
2014-05-13 15:46:40 -07:00
Hunter Haugen
0804121719 Fix the stdlib functions that fail tests 2014-05-08 14:55:23 -07:00
Ashley Penney
0b59dfe642 Merge pull request #222 from mfoo/fix/master/concat-primitives
Allow concat to take non-array second parameters
2014-04-24 13:41:42 -04:00
Yanis Guenane
d9b5e912bb (MODULES-603) Add defaults arguments to ensure_packages()
Without this patch one can not specify package resource specific
parameters. All the ensure_packages() function does it makes sure
the named packages are installed. This patch allows one to pass
default as a second argument and allow greater flexibility on
packages installations.

Use case like the following are now possible :
  * ensure_packages(['r10k', 'serverspec'], {'provider' => 'gem'})
  * ensure_packages(['ntp'], {'require' => 'Exec[foobar]'})
2014-03-30 18:47:36 -04:00
Martin Foot
35bf5fd8c9 Allow concat to take non-array second parameters
Also improve and extend concat tests to lock down functionality
2014-02-21 15:48:27 +00:00
Justin Burnham
c12e9afc97 PUP-1724 Don't modify the paramaters to deep_merge
Instead of modifying the first paramater of deep_merge due to the
use of the merge! function, instead use merge to return a copy of
the merged object. This allows one to continue to use the original
first parameter after the call to deep_merge.
2014-02-17 12:19:40 -08:00
Sharif Nassar
a972e0645b Remove trailing whitespace 2014-02-05 15:01:45 -08:00
David Schmitt
52fcef573f (PUP-638) Add a pick_default() function that always returns a value.
This version of pick() does not error out, instead always returning at least
the last argument, even if that too has no "real" value.
2014-01-29 09:26:35 -08:00
Henrik Lindberg
2c8450d830 (PUP-1195) Rephrase documentation for is_integer and is_numeric
The documentation contained references to future decisions about
functionality. 
Text rephrased for clarity.
2014-01-24 00:22:09 +01:00
Simon Effenberg
264dc9bbde (PUP-1195) Fix is_numeric/is_integer when checking non-string parameters
I expect a function called "is_numeric" or "is_integer" to check if a
variable is an integer or a number even if the variable passed by isn't
a string nor a number at all. Otherwise we should call them
is_string_a_number and is_string_an_integer and we have then to remove
the check for .is_a?(Number) and .is_a?(FixNum)

now checking also if it is a hex or octal number

improved/corrected checking for integer

* checking against Integer instead of Fixnum so that
  also Bignum is matching
* now .is_a? Integer is done first so this is quiet fast

Now many types of numerics are recognized.

1. Float/Integer values (signed or unsigned, with exponent or without)
2. octal and hex check
3. except hex numbers and the "0." in a float lower than 1 can be prefixed
   with a '0'.

whitespaces shouldn't be allowed as prefix/suffix

string representation of numbers should not contain any type of
whitespace.. the user is responsible to clean a string before checking
it..

fix documentation and added more checks

tried to be 99.9% backward compatible

* for now the decission is post poned if hex and octal numbers
  should be allowed or not (is_numeric)
* native Bignum is now also a valid integer class

fix problem with old 1.8 ruby and Hash.to_s/Array.to_s

In ruby < 1.9 array and hashes would be recognized as numeric
if they have a special format:

1.8:

  [1,2,3,4].to_s = "1234"
  {1=>2}.to_s    = "12"

1.9:

  [1,2,3,4].to_s = "[1, 2, 3, 4]"
  {1=>2}.to_s    = "{1=>2}"
2014-01-23 23:59:28 +01:00
Adrien Thebo
686a05aea2 (maint) refactor ensure_packages for clarity 2014-01-15 11:03:49 -08:00
Tomas Doran
735db82bef Allow a single argument, rather than an array 2014-01-15 11:03:33 -08:00
Franco Catena
7991dd2073 Fix prefix exception message (Closes #23364) 2013-12-20 14:50:57 -08:00
Joshua Hoblitt
1077881873 (#23381) add is_bool() function 2013-12-09 11:50:03 -07:00
Justin Burnham
199ca9c78b (#20200) Add a recursive merge function.
Issue #20200 notes that the merge function does not
support nested hashes.

To prevent unintended side effects with changing merge,
add a deep_merge function instead.
2013-10-29 12:22:49 -07:00
Matthew Haughton
57a5c0b3e3 (Main) fix typo in pick error message
Update pick error message "at least one non empty value"
2013-10-29 12:01:25 -07:00
Tehmasp Chaudhri
753801537f Fixed 'separator' typos 2013-10-25 15:26:21 -06:00
Adrien Thebo
d60d872c1a Merge branch 'pull-180'
This closes GH-180
2013-09-18 21:56:16 -07:00
sgzijl
9e0d8a8e0a (#22214): close content file before executing checkscript
Right now validation seems to be done against zero byte generated temp
files. We need to close the file before executing validation against it.
2013-09-18 21:32:07 -07:00
Adrien Thebo
7ccf8cf09b Merge pull request #184 from lmello/fix_bug_20681_delete_undef_values
delete_undef_values function fix bug #20681
2013-09-18 10:08:49 -07:00