class nodo::subsystem::resolver( $manage = lookup('nodo::subsystem::resolver::manage', undef, undef, false), $nameservers = lookup('nodo::subsystem::resolver::nameservers', undef, undef, ''), $domain = lookup('nodo::subsystem::resolver::domain', undef, undef, $::domain), $search = lookup('nodo::subsystem::resolver::search', undef, undef, $::fqdn) ) { # DNS resolver case $manage { 'package': { package { 'resolvconf': ensure => present, } file { '/etc/resolv.conf': ensure => '/etc/resolvconf/run/resolv.conf', require => Package['resolvconf'], } } 'class': { class { 'resolvconf': domain => $domain, search => $search, nameservers => $nameservers, } } unmanage: { package { 'resolvconf': ensure => absent, } file { '/etc/resolv.conf': ensure => present, owner => root, group => root, mode => '0644', } } } }