diff --git a/manifests/iface.pp b/manifests/iface.pp index d1d6eef..5543a3d 100644 --- a/manifests/iface.pp +++ b/manifests/iface.pp @@ -1,14 +1,14 @@ -define interfaces::iface ( $family, $method, $options=[], $auto=0, $ifname='' ) { - if $ifname == '' { - $_ifname = $name - } else { - $_ifname = $ifname - } - if $auto == 1 { - interfaces::auto { $_ifname: } +define interfaces::iface ( $family, $method, $options=[], $auto=0, $ifname='UNSET' ) { + $ifname_real = $ifname ? { + 'UNSET' => $name, + default => $ifname, } - $str = "iface ${_ifname} ${family} ${method}\n\t<%= options.join('\n\t') %>\n\n" + if $auto == 1 { + interfaces::auto { $ifname_real: } + } + + $str = "iface ${ifname_real} ${family} ${method}\n\t<%= options.join('\n\t') %>\n\n" concat::fragment{"interfaces::iface_${name}": target => '/etc/network/interfaces', content => inline_template($str),