Morgan Haskel
07c38e518a
Merge pull request #482 from DavidS/document_validate_slength_3rd_arg
...
Add validate_slength's optional 3rd arg to README
2015-07-09 10:20:37 -07:00
Alexander Fisher
c64ecfb0c3
Add validate_slength's optional 3rd arg to README
2015-07-09 18:13:19 +01:00
Mathias Klette
e96a818782
catch and rescue from looking up non-existent facts when looking for 'kind'
...
facter (2.x) only provides facts without interface suffix for
* ipaddress
* netmask
'macaddress' and 'network' facts will always have the related interface
name appended. in turns lookupvar throws errors when strict_variables is
enabled.
2015-06-24 15:02:02 +02:00
Tomas Doran
212c498df3
Also catch :undefined_variable as thrown by future parser
2015-06-05 12:43:01 +01:00
Hunter Haugen
ad4ca4cc34
Fix time() on 1.8.7
...
The time() function takes an argument of a timezone, and always returns
time in epoch format. The epoch format is the number of seconds that
have elapsed since January 1, 1970 (midnight UTC/GMT), not counting leap
seconds. This means that it is universally the same regardless of
timezones.
I don't know what the timezone argument is supposed to do, and it is not
documented. So lets just make 1.8.7 work like > 1.8.7
2015-06-04 09:40:52 -07:00
Eli Young
d7c8460353
fqdn_rotate: Improve documentation
2015-06-01 16:19:07 -07:00
Eli Young
601f681787
fqdn_rotate: Don't use the value itself as part of the random seed
...
Previously, the random number generator was seeded with the array or
string to be rotated in addition to any values specifically provided for
seeding. This behavior is potentially insecure in that it allows an
attacker who can modify the source data to choose the post-shuffle
order.
2015-06-01 16:19:07 -07:00
David Schmitt
f3e79ddcd5
Convert tests to use plain rspec-puppet
...
Tests in the new style produces the following documentation output:
abs
should not eq nil
should run abs() and raise an Puppet::ParseError
should run abs(-34) and return 34
should run abs("-34") and return 34
should run abs(34) and return 34
should run abs("34") and return 34
2015-06-01 18:02:22 +01:00
Igor Galić
687600c30c
simplify mac address regex
...
let the computer do the counting and repetition and case
2015-05-29 20:13:21 +02:00
David Schmitt
cf9f7a6b7e
validate_integer, validate_numeric: explicitely reject hashes in arrays
...
Without this patch, Ruby 1.8's Hash#to_s behaviour causes [{1=>2}] to be
treated as "12" when validating values.
2015-05-27 20:05:05 +01:00
David Schmitt
0dc0e0dbcf
fqdn_rotate: reset srand seed correctly on old ruby versions
...
Without this, the global seed is reseeded on every use
of fqdn_rotate, which is a waste. Older rubies might even use a
time-base seed which adversly impacts the quality of the RNG.
2015-05-26 14:25:43 +01:00
David Schmitt
f49eb6b8e2
range(): fix TypeError(can't convert nil into Integer) when using range syntax
2015-05-06 10:13:27 +01:00
David Schmitt
cf251303be
Merge pull request #447 from elyscape/fix_range
...
Restore removed functionality to range()
2015-05-06 09:48:31 +01:00
Eli Young
25ed4b43c4
range: Clean up and clarify function contents
2015-05-05 16:06:35 -07:00
Eli Young
8cf011d7a2
Revert "range: remove dead code"
...
This reverts commit 063c58a992
, which
actually removed non-dead code. Specifically, it removed the ability to
make calls such as `range('2..3')`, `range('2...3')`, and
`range('2-3')`.
cf. https://github.com/puppetlabs/puppetlabs-stdlib/pull/443#commitcomment-11055565
2015-05-05 16:06:08 -07:00
Eli Young
7d7e905b54
pw_hash: Fix functionality on JRuby < 1.7.17
...
The previous change to this function broke it on JRuby before 1.7.17 by
attempting to use a variable that wasn't defined (`salt`). To fix this,
define `salt` ahead of time and use that instead of building the salt
later.
cf. https://github.com/puppetlabs/puppetlabs-stdlib/pull/443#discussion_r29718588
2015-05-05 15:53:34 -07:00
David Schmitt
d4f3d57f16
validate_augeas: fix URL to docs
2015-05-05 13:55:18 +01:00
David Schmitt
063c58a992
range: remove dead code
...
Since a ParseError is always thrown for zero arguments, the if and all
dependent code can be removed.
2015-05-05 13:30:57 +01:00
David Schmitt
9bae8356fd
pw_hash: avoid ruby magic when running on java
2015-05-05 13:30:57 +01:00
David Schmitt
c27513463d
fqdn_rand_string: fix argument error message
2015-04-17 14:24:40 -07:00
Morgan Haskel
8a1d1e2f34
Merge pull request #314 from amateo/feature/loadyaml_check_file
...
Check if file exists before loading with loadyaml. If not, return nil
2015-04-16 10:48:10 -07:00
Hunter Haugen
8fba5c058b
Merge pull request #405 from elyscape/feature/fqdn_rand_strings
...
(MODULES-1715) Add FQDN-based random string generator
2015-04-09 10:45:38 -07:00
Eli Young
23be4020dd
(MODULES-1737) Add pw_hash() function
2015-04-05 17:21:17 -07:00
Eli Young
a82266c256
(MODULES-1715) Add fqdn_rand string generators
2015-03-31 17:33:04 -07:00
Rod Montgomery
ee13438d2a
If present, top-level domain must be alphabetic
...
See RFC 1123, Section 2.1
http://tools.ietf.org/html/rfc1123#section-2
2015-03-05 21:51:12 -06:00
TP Honey
bf8e5b0573
Merge pull request #422 from cyberious/assert_private
...
Assert private
2015-03-05 19:15:41 +00:00
Travis Fields
4a68b224c4
Add private function back and forward to assert_private with deprecation warning
2015-03-05 11:12:51 -08:00
Hunter Haugen
668b3c31b5
Merge pull request #369 from rfugina/dirname_typecheck
...
Dirname typecheck
2015-03-05 11:00:36 -08:00
Franz Pletz
56d815bcfc
Rename private() to assert_private()
...
As mentioned in #270 , private is a reserved keyword in the future parser
which is to be released with Puppet 4. As it stands, this function is
not useable with the future parser so it needs to renamed.
This is a breaking change.
2015-03-05 10:59:31 -08:00
Hunter Haugen
41965fd2c9
Merge pull request #375 from poikilotherm/feature/master/validate_integer_and_numeric
...
(MODULES-560) Add new functions validate_numeric() and validate_integer().
2015-03-05 10:57:43 -08:00
Stefan Goethals
0236cd51bc
Add support for hashes in the prefix function
...
Signed-off-by: Julien Pivotto <roidelapluie@inuits.eu>
2015-03-03 16:20:55 -08:00
Bryon Roché
41baef8502
URI.escape for the array case was incorrect.
...
The previous commit to uriescape() changed the implementation to use the ruby default escape list for URI.escape(), but did not change the call triggered when uriescape() was called on an array, triggering ruby errors.
2015-03-03 16:05:47 -08:00
Morgan Haskel
055083c117
Merge pull request #407 from adamcrews/ceiling_function
...
Add a ceiling function to complement the floor function.
2015-03-03 15:59:06 -08:00
Travis Fields
85e81f9bdf
Loosen the restrictions of upcase and allow for recursion of the objects and only worry if the object responds to upcase
2015-03-02 10:45:43 -08:00
Travis Fields
419f51bdd9
Fix issue with Ruby 1.8.7 which did not allow for the return in an each_pair of the hash
2015-02-26 10:13:28 -08:00
Travis Fields
7021b1f55c
Add Hash to upcase
2015-02-25 11:39:27 -08:00
Morgan Haskel
b693c870d2
Check for string before copying
2015-02-19 12:01:26 -08:00
Sean Millichamp
1321d586a8
(MODULES-1771) Don't modify input to is_domain_name()
...
Fix is_domain_name() so it dup's its incoming argument
to avoid changing the original with a later chomp!
2015-02-14 10:49:26 -05:00
Eli Young
84f866ffaf
(MODULES-1738) Don't modify global seed in fqdn_rotate()
...
As per puppetlabs/puppet@292233c , this leaves the global seed in a
deterministic state, which is bad. Puppet::Util.deterministic_rand()
exists to avoid running into this issue, but is only present starting in
Puppet 3.2.0.
2015-02-12 14:04:47 -08:00
Adam Crews
53b1802a92
Add a ceiling function to complement the floor function.
2015-02-01 22:46:16 -08:00
Hunter Haugen
7c8ae311ca
(MODULES-1473) Deprecate type() function for new parser
...
The `type()` function will cease to work on the new parser because 'type'
is a reserved keyword. The `type3x()` function may be used to continue
similar functionality, but will be deprecated in favor of the built-in
typing system.
The `type_of()` function has been included to introspect types in the
new parser.
2015-01-07 16:40:06 -08:00
Travis Fields
4700f16e82
Merge pull request #336 from mklette/master
...
ensure_resource: be more verbose in debug mode
2015-01-02 12:27:33 -08:00
Travis Fields
f6e20d2068
Update docs to reflect new behavior of delete function taking array in second argument
2014-12-19 10:41:07 -08:00
Travis Fields
8ec6f8dbfd
MODULES-1606 add ability to pass array to delete for items to delete
2014-12-19 10:26:01 -08:00
Peter Souter
b3d007f1da
(MODULES-1582) Improve % detection
...
Avoids any validate commands that have %'s in them other than "... % ..."
2014-12-18 23:35:24 +00:00
Peter Souter
165caa8be1
(MODULES-1582) Initial spike for % placeholder
...
This simply `gsub`'s the file path into where the % placeholder is.
2014-12-18 23:08:33 +00:00
Morgan Haskel
696c89de99
Merge pull request #372 from poikilotherm/feature/master/validate_absolute_path_allow_arrays
...
Allow array of pathes in validate_absolute_path
2014-12-17 14:19:30 -08:00
Morgan Haskel
841b0df210
Merge pull request #368 from rfugina/basename
...
Basename implementation
2014-12-17 11:00:23 -08:00
Rob Fugina
2a3babc348
Added type checks for dirname(), and additional tests
2014-12-17 12:55:48 -06:00
Rob Fugina
ef3d42f7bb
Added basename() based on Ruby's File.basename
...
Based on dirname code. Includes RSpec tests and docs.
2014-12-17 12:39:40 -06:00