class nodo::subsystem::hosts( $custom = hiera('nodo::subsystem::hosts::custom', false) ) { # Sometimes might be useful to manage the whole # hosts file, see http://projects.puppetlabs.com/issues/10704 case $custom { true: { file { '/etc/hosts': ensure => present, owner => root, group => root, mode => 0640, source => "puppet:///modules/site_nodo/hosts/${::fqdn}", } } default: { host { "${::hostname}": ensure => present, ip => "${::ipaddress}", host_aliases => [ "${::fqdn}" ], } host { "localhost": ensure => present, ip => "127.0.0.1", } host { "ip6-localhost": ensure => present, ip => "::1", host_aliases => [ "ip6-loopback" ], } host { "ip6-localnet": ensure => present, ip => "fe00::0", } host { "ip6-mcastprefix": ensure => present, ip => "ff00::0", } host { "ip6-allnodes": ensure => present, ip => "ff02::1", } host { "ip6-allrouters": ensure => present, ip => "ff02::2", } host { "ip6-allhosts": ensure => present, ip => "ff02::3", } } } }