summaryrefslogtreecommitdiff
path: root/lib/puppet/parser/functions
AgeCommit message (Collapse)Author
2014-11-17Need to convert strings and fixnums to arraysMorgan Haskel
2014-11-13Merge pull request #319 from Spredzy/member_array_in_arrayHunter Haugen
(MODULES-1329) Allow member to look for array
2014-11-13Merge pull request #365 from dalen/range-integersHunter Haugen
Make the range function work with integers
2014-11-12(MODULES-1329) Allow member function to look for arrayYanis Guenane
Currently, the member function allows one to only find if a variable is part of an array. Sometimes it is useful to find if an array is part of a bigger array for validation purpose.
2014-11-12Make the range function work with integersErik Dalén
This is needed for the future parser which actually treats numbers as numbers and strings as strings. With this patch you can use range(1,5) instead of having to quote them like range('1','5').
2014-11-12(maint) Fix indentation of range functionErik Dalén
2014-11-10Fix breaking out of .each loopHunter Haugen
And some other small formatting fixes that don't belong in this patch.
2014-11-10Catch :undefined_variable thrown when Future Parser is enabled with 3.7.xTravis Fields
2014-11-10Merge pull request #354 from puppetlabs/4.3.xMorgan Haskel
4.3.x
2014-11-07Merge pull request #343 from zacharyalexstern/fix_to_bytesTravis Fields
Added correct converstions for PB and EB.
2014-11-04Merge pull request #350 from cyberious/modules1413Morgan Haskel
MODULES-1413 Add ability for member to take numeric objects
2014-11-04MODULES-1413 Ability to for future parser to use member with FixNum typesTravis Fields
2014-10-30Merge branch '4.3.x'Travis Fields
2014-10-29Fix validate_cmd, previous addition of SystemCallError only works for Puppet ↵Travis Fields
3.7, previous version throw different exception. Wrapping in generic Exception catch all
2014-10-29Merge remote-tracking branch 'origin/4.3.x'Travis Fields
2014-10-29Add proper exception catching of Windows errors when CreateProcess does not ↵Travis Fields
succeed
2014-10-28Merge remote-tracking branch 'origin/4.3.x' back to masterTravis Fields
2014-10-28Fix testcases for Future Parser and resolve issue with values_at in assuming ↵Travis Fields
that it was dealing with a string
2014-10-28Added correct converstions for PB and EB.Zachary Alex Stern
* 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-24Merge branch '4.3.x', add tempfile back for resource validate_cmd and ↵Travis Fields
validate_augeas
2014-10-24add require 'tempfile' to resolve a previously autorequired resourceTravis Fields
2014-10-24Merge branch '4.3.x'Travis Fields
Conflicts: README.markdown lib/puppet/parser/functions/has_interface_with.rb
2014-10-10ensure_resource: be more verbose in debug modeMathias Klette
helps discovering duplication issues, especially when figthing boolean vs. string arguments
2014-10-09Merge pull request #262 from tremble/MODULES-707Morgan Haskel
Modules 707
2014-10-08ENTERPRISE-281 fixes issue with has_interfaces and case mismatch causing us ↵Travis Fields
not to return some interfaces
2014-09-22Fix strict_variables = trueTomas Doran
2014-09-22Re-use existing str2bool code rather than doing a copy and pasteMark Chappell
2014-09-22(MODULES-707) chomp() fails because generate() no longer returns a stringMark Chappell
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-16Note that also future parser does not workAlexander Pánek
2014-09-16Updated docs of validate_string to reflect bugAlexander Pánek
See: https://tickets.puppetlabs.com/browse/MODULES-457
2014-09-02Check if file exists before loading with loadyaml. If not, return nilAngel L. Mateo
2014-08-05Merge branch '4.3.x'Hunter Haugen
2014-07-31Concatenate arrays without modifying the first arrayColleen Murphy
2014-06-23Increase resilience if lookup var comes back with nil objectTravis Fields
2014-06-11Add private() functionRaphaël Pinson
2014-05-15Merge pull request #258 from mckern/enhancement/master/camelcasedemboolsAshley Penney
(MODULES-905) Narrow the confinement in bool2str
2014-05-15(MODULES-905) Narrow the confinement in bool2strRyan McKern
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-15Merge pull request #255 from mckern/enhancement/master/camelcasedemboolsAshley Penney
(MODULES-905) Add bool2str() and camelcase() for string manipulation
2014-05-13(MODULES-905) Add bool2str() and camelcase() for string manipulationRyan McKern
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-08Fix the stdlib functions that fail testsHunter Haugen
2014-04-24Merge pull request #222 from mfoo/fix/master/concat-primitivesAshley Penney
Allow concat to take non-array second parameters
2014-03-30(MODULES-603) Add defaults arguments to ensure_packages()Yanis Guenane
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-02-21Allow concat to take non-array second parametersMartin Foot
Also improve and extend concat tests to lock down functionality
2014-02-17PUP-1724 Don't modify the paramaters to deep_mergeJustin Burnham
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-05Remove trailing whitespaceSharif Nassar
2014-01-29(PUP-638) Add a pick_default() function that always returns a value.David Schmitt
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-24(PUP-1195) Rephrase documentation for is_integer and is_numericHenrik Lindberg
The documentation contained references to future decisions about functionality. Text rephrased for clarity.
2014-01-23(PUP-1195) Fix is_numeric/is_integer when checking non-string parametersSimon Effenberg
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-15(maint) refactor ensure_packages for clarityAdrien Thebo
2014-01-15Allow a single argument, rather than an arrayTomas Doran