# manage wireguard interfaces via wg-quick class wireguard ( Boolean $manage_package = true, String $package_name = 'wireguard-tools', Hash $interfaces = {}, ) { if $manage_package { package { $package_name: ensure => installed, before => File['/etc/wireguard'], } } file { '/etc/wireguard': ensure => directory, owner => 'root', group => 'root', mode => '0700', } $interfaces.each |String $iface, Hash $data| { wireguard::interface { $iface: * => $data, } } }