[Pkg-puppet-devel] [SCM] Puppet packaging for Debian branch, experimental, updated. debian/2.6.8-1-844-g7ec39d5
Matt Robinson
matt at puppetlabs.com
Tue May 10 08:09:13 UTC 2011
The following commit has been merged in the experimental branch:
commit ade4efea6d2d4dbee7ccfec62114df0c5dcf33e2
Author: Matt Robinson <matt at puppetlabs.com>
Date: Mon Mar 28 11:52:11 2011 -0700
(#6830) Fix MD5 handling to work with Ruby 1.9
In Ruby 1.9 you have to require 'digest/md5' instead of just 'md5'. The
following irb sessions from each version of Ruby should explain the changes in
how MD5 is used between Ruby versions and why this patch was made.
ruby-1.9.2-p136 :001 > require 'md5'
LoadError: no such file to load -- md5
ruby-1.9.2-p136 :002 > require 'digest/md5'
=> true
ruby-1.9.2-p136 :003 > Digest::MD5.hexdigest('mystring')
=> "169319501261c644a58610f967e8f9d0"
ruby-1.9.2-p136 :004 > Digest::MD5.new('mystring')
=> #<Digest::MD5: d41d8cd98f00b204e9800998ecf8427e>
ruby-1.8.7-p330 :001 > require 'digest/md5'
=> []
ruby-1.8.7-p330 :002 > require 'md5'
=> ["MD5"]
ruby-1.8.7-p330 :003 > Digest::MD5.hexdigest('mystring')
=> "169319501261c644a58610f967e8f9d0"
ruby-1.8.7-p330 :004 > MD5.new('mystring')
=> #<MD5: 169319501261c644a58610f967e8f9d0>
ruby-1.8.7-p330 :005 > MD5.new('mystring').to_s
=> "169319501261c644a58610f967e8f9d0"
ruby-1.8.7-p330 :006 > Digest::MD5.new('mystring')
ArgumentError: wrong number of arguments (1 for 0)
Reviewed-by: Jesse Wolfe <jesse at puppetlabs.com>
diff --git a/lib/puppet/parser/functions/fqdn_rand.rb b/lib/puppet/parser/functions/fqdn_rand.rb
index 52946f2..91157a1 100644
--- a/lib/puppet/parser/functions/fqdn_rand.rb
+++ b/lib/puppet/parser/functions/fqdn_rand.rb
@@ -5,8 +5,8 @@ Puppet::Parser::Functions::newfunction(:fqdn_rand, :type => :rvalue, :doc =>
$random_number = fqdn_rand(30)
$random_number_seed = fqdn_rand(30,30)") do |args|
- require 'md5'
+ require 'digest/md5'
max = args.shift
- srand MD5.new([lookupvar('fqdn'),args].join(':')).to_s.hex
+ srand(Digest::MD5.hexdigest([lookupvar('fqdn'),args].join(':')).hex)
rand(max).to_s
end
--
Puppet packaging for Debian
More information about the Pkg-puppet-devel
mailing list