From: Peter Palfrader Date: Tue, 31 Jul 2018 08:19:37 +0000 (+0200) Subject: Make sure nodeinfo['misc']['v[46]addrs'] always exists, possibly empty. X-Git-Url: https://git.adam-barratt.org.uk/?a=commitdiff_plain;h=7844ca815c0593b0ec5b98102af4d2125c1f395f;p=mirror%2Fdsa-puppet.git Make sure nodeinfo['misc']['v[46]addrs'] always exists, possibly empty. --- diff --git a/modules/ferm/manifests/init.pp b/modules/ferm/manifests/init.pp index 527881682..c1e3c528f 100644 --- a/modules/ferm/manifests/init.pp +++ b/modules/ferm/manifests/init.pp @@ -34,11 +34,9 @@ class ferm { munin::check { $munin_ips: script => 'ip_', } - if getfromhash($site::nodeinfo, 'misc', 'v6addrs') { - $munin6_ips = getfromhash($site::nodeinfo, 'misc', 'v6addrs') - .map |$addr| { "ip_${addr}" } - munin::ipv6check { $munin6_ips: } - } + $munin6_ips = getfromhash($site::nodeinfo, 'misc', 'v6addrs') + .map |$addr| { "ip_${addr}" } + munin::ipv6check { $munin6_ips: } # get rid of old stuff $munin6_ip6s = split(regsubst($::v6ips, '([^,]+)', 'ip6_\1', 'G'), ',') diff --git a/modules/puppetmaster/lib/puppet/parser/functions/nodeinfo.rb b/modules/puppetmaster/lib/puppet/parser/functions/nodeinfo.rb index 4927002df..812ff0c9c 100644 --- a/modules/puppetmaster/lib/puppet/parser/functions/nodeinfo.rb +++ b/modules/puppetmaster/lib/puppet/parser/functions/nodeinfo.rb @@ -33,11 +33,15 @@ module Puppet::Parser::Functions # find out if we are behind nat intersection = nodeinfo['misc']['v4addrs'] & nodeinfo['ldap']['ipHostNumber'] nodeinfo['misc']['natted'] = intersection.empty? + else + nodeinfo['misc']['v4addrs'] = [] end v6ips = lookupvar('::v6ips') if v6ips and v6ips.to_s != "" and v6ips.to_s != 'undefined' nodeinfo['misc']['v6addrs'] = v6ips.split(',') + else + nodeinfo['misc']['v6addrs'] = [] end end