X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=modules%2Fpuppetmaster%2Flib%2Fpuppet%2Fparser%2Ffunctions%2Fhas_role.rb;h=c8b537f796ea85c62d7603b6cc76653db38605e4;hb=5d19747e6d11fe2a858a25eca511373b1655c88f;hp=e5f99d5072c264d009db4df1b2aa0b06c55173ce;hpb=f833a1c122597f80da4d4095cae8d7d5bd852a7a;p=dsa-puppet.git diff --git a/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb b/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb index e5f99d50..c8b537f7 100644 --- a/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb +++ b/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb @@ -1,10 +1,12 @@ module Puppet::Parser::Functions newfunction(:has_role, :type => :rvalue) do |args| - begin - role = args.shift + role = args[0] roles = lookupvar('site::roles') fqdn = lookupvar('fqdn') - return fqdn in roles[role] + if not roles.include?(role) + err "Failed to look up missing role #{role}" + return false + end + return roles[role].include?(fqdn) end - end end