Define public IP addresses in base since we cannot trust facter
authorPeter Palfrader <peter@palfrader.org>
Sat, 7 Sep 2019 15:08:24 +0000 (17:08 +0200)
committerPeter Palfrader <peter@palfrader.org>
Sat, 7 Sep 2019 15:08:40 +0000 (17:08 +0200)
manifests/site.pp
modules/base/manifests/init.pp

index 0c178c1..3e4e39d 100644 (file)
@@ -21,6 +21,7 @@ Service {
 node default {
        # we really should rename this one
        include site
+       include base
 
        # this is magic: it will include whatever classes says we should
        # include, based on the value of the "classes" array
index 986db5a..413c667 100644 (file)
@@ -1,4 +1,9 @@
-class base {
+class base(
+  Stdlib::IP::Address $public_address            = filter_ipv4(getfromhash($site::nodeinfo, 'ldap', 'ipHostNumber'))[0],
+  Optional[Stdlib::IP::Address] $public_address6 = filter_ipv6(getfromhash($site::nodeinfo, 'ldap', 'ipHostNumber'))[0],
+) {
+  $public_addresses = [ $public_address, $public_address6 ]
+
     include munin
     include syslog_ng
     include sudo