From 4050864b78a0820698589e994b16d6fa2252b147 Mon Sep 17 00:00:00 2001 From: Tollef Fog Heen Date: Fri, 2 Feb 2018 10:18:00 +0100 Subject: [PATCH] Add support to hashes for has_role In addition to supporting roles: foo: - host1 - host2 - host3 Add support for: roles: foo: host1: k1: v1 host2: ~ as well. --- .../lib/puppet/parser/functions/has_role.rb | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb b/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb index 5c1af8e04..427440fa1 100644 --- a/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb +++ b/modules/puppetmaster/lib/puppet/parser/functions/has_role.rb @@ -7,11 +7,14 @@ module Puppet::Parser::Functions err "Failed to look up missing role #{role}" return false end - return roles[role].map{ |k| - case k - when Hash then k.keys.first - else k - end - }.include?(fqdn) - end + case roles[role] + when Hash then roles[role].include?(fqdn) + else roles[role].map{ |k| + case k + when Hash then k.keys.first + else k + end + }.include?(fqdn) + end + end end -- 2.20.1