summaryrefslogtreecommitdiff
path: root/lib/chef/resource_reporter.rb
diff options
context:
space:
mode:
authorjamesc <james@opscode.com>2013-05-23 20:21:05 -0700
committerBryan McLellan <btm@opscode.com>2013-06-18 08:58:18 -0700
commitb3aafbc814a5dceb2d6f793d5035d4248f153892 (patch)
treebe24dec0ae8044a20dd54a89ab9c467739e773ab /lib/chef/resource_reporter.rb
parent5adefe7da91576bc6a92d6ebec13ff41fb6b1287 (diff)
downloadchef-b3aafbc814a5dceb2d6f793d5035d4248f153892.tar.gz
monkey patch SecureRandom with uuid method if required
Diffstat (limited to 'lib/chef/resource_reporter.rb')
-rw-r--r--lib/chef/resource_reporter.rb16
1 files changed, 2 insertions, 14 deletions
diff --git a/lib/chef/resource_reporter.rb b/lib/chef/resource_reporter.rb
index c428e70afd..44e8a068db 100644
--- a/lib/chef/resource_reporter.rb
+++ b/lib/chef/resource_reporter.rb
@@ -20,6 +20,7 @@
#
require 'uri'
+require 'chef/monkey_patches/securerandom'
require 'chef/event_dispatch/base'
class Chef
@@ -97,12 +98,7 @@ class Chef
@pending_update = nil
@status = "success"
@exception = nil
- begin
- @run_id = uuid
- rescue LoadError
- Chef::Log.debug("Can't load SecureRandom - disabling resource_reporter")
- @reporting_enabled = false
- end
+ @run_id = SecureRandom.uuid
@rest_client = rest_client
@error_descriptions = {}
end
@@ -307,13 +303,5 @@ class Chef
end
end
- def uuid
- require 'securerandom'
- # Ruby 1.8.7 does not have SecureRandom::uuid, so copy the 1.9.2 impl here
- ary = SecureRandom.random_bytes(16).unpack("NnnnnN")
- ary[2] = (ary[2] & 0x0fff) | 0x4000
- ary[3] = (ary[3] & 0x3fff) | 0x8000
- "%08x-%04x-%04x-%04x-%04x%08x" % ary
- end
end
end