module Puppet::Parser::Functions
newfunction(:entropy_provider, :type => :rvalue) do |args|
begin
- require '/var/lib/puppet/lib/puppet/parser/functions/whohosts.rb'
require 'digest/sha1'
fqdn = args[0]
nodeinfo = args[1]
- localinfo = lookupvar('site::localinfo')
- allnodeinfo = lookupvar('site::allnodeinfo')
+ localinfo = lookupvar('deprecated::localinfo')
+ allnodeinfo = lookupvar('deprecated::allnodeinfo')
raise Puppet::ParseError, "entropy_provider: Cannot learn fqdn" unless fqdn
- raise Puppet::ParseError, "entropy_provider: Cannot learn nodeinfo" unless nodeinfo
- raise Puppet::ParseError, "entropy_provider: Cannot learn localinfo" unless localinfo
- raise Puppet::ParseError, "entropy_provider: Cannot learn allnodeinfo" unless allnodeinfo
+ raise Puppet::ParseError, "entropy_provider: Cannot learn nodeinfo" unless nodeinfo and nodeinfo.size > 0
+ raise Puppet::ParseError, "entropy_provider: Cannot learn localinfo" unless localinfo and localinfo.size > 0
+ raise Puppet::ParseError, "entropy_provider: Cannot learn allnodeinfo" unless allnodeinfo and allnodeinfo.size > 0
# find where all the entropy keys are
provider = []
next unless localinfo[node]['entropy_key']
addresses = allnodeinfo[node]['ipHostNumber']
- thishoster = function_whohosts([addresses, "/etc/puppet/modules/debian_org/misc/hoster.yaml"])
+ thishoster = function_whohosts([addresses])
name = thishoster['name']
provider << node