diff options
Diffstat (limited to 'manifests/interface.pp')
-rw-r--r-- | manifests/interface.pp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/manifests/interface.pp b/manifests/interface.pp index 10373d1..3598103 100644 --- a/manifests/interface.pp +++ b/manifests/interface.pp @@ -1,16 +1,24 @@ define wpa_supplicant::interface ( String $interface = $name, - Array[Hash] $networks = [], + Array[String] $networks = [], ) { service { "wpa_supplicant@${interface}.service": ensure => running, enable => true, } - file { "/etc/wpa_supplicant/wpa_supplicant-${interface}.conf": + $conf_file = "/etc/wpa_supplicant/wpa_supplicant-${interface}.conf" + + + $network_items = $networks.map |$name| { + { 'ssid' => "\"${name}\"" } + $wpa_supplicant::networks[$name] + } + + + file { $conf_file: ensure => file, content => epp('wpa_supplicant/wpa_supplicant.conf.epp', { - networks => $networks + networks => $network_items, }), } ~> exec { "Reload wpa_supplicant for ${interface}": command => [ 'wpa_cli', 'reconfigure', '-i', $interface, ], |