X-Git-Url: https://git.immae.eu/?p=perso%2FImmae%2FProjets%2FPuppet.git;a=blobdiff_plain;f=modules%2Fprofile%2Fmanifests%2Fwireguard.pp;h=829f82d201647169296d357b13b78cd0a3339edd;hp=ad1b081fd067dbf7361b3d8cced40de944128ba6;hb=cfad76106ad85e170c08a196e7e365a78293aa7c;hpb=a7b985dd3cc4af68875733eb135335a31504f472 diff --git a/modules/profile/manifests/wireguard.pp b/modules/profile/manifests/wireguard.pp index ad1b081..829f82d 100644 --- a/modules/profile/manifests/wireguard.pp +++ b/modules/profile/manifests/wireguard.pp @@ -14,11 +14,22 @@ class profile::wireguard ( $private_key = generate_password(32, $password_seed, "wireguard", "curve25519", true) + if file("/usr/bin/wg", "/dev/null") != "" { + $puppet_notifies_path = lookup("base_installation::puppet_notifies_path") + $public_key = generate("/usr/bin/bash", "-c", "echo $private_key | /usr/bin/wg pubkey") + concat::fragment { "host_ldap add wireguard": + target => "$puppet_notifies_path/host_ldap.info", + content => "puppetVar: wireguard_public=$public_key", + order => "00-80" + } + } + file { "/etc/wireguard/network.conf": ensure => "file", mode => "0600", content => template("profile/wireguard/network.conf.erb"), require => [Package["wireguard-tools"], Package["wireguard-dkms"]], + notify => Service["wg-quick@network"], } -> service { "wg-quick@network":