diff options
Diffstat (limited to 'roles/wireguard/tasks/keys.yml')
-rw-r--r-- | roles/wireguard/tasks/keys.yml | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/roles/wireguard/tasks/keys.yml b/roles/wireguard/tasks/keys.yml new file mode 100644 index 0000000..7a89010 --- /dev/null +++ b/roles/wireguard/tasks/keys.yml @@ -0,0 +1,17 @@ +- name: generate hosts keys + shell: | + set -o pipefail + ls "{{ wireguard_local_dir }}/{{ item }}.keys" && exit 0 + umask 077 + wg genkey | \ + tee "{{ item }}.keys" | \ + wg pubkey >> "{{ item }}.keys" + exit 2 + args: + chdir: "{{ wireguard_local_dir }}" + loop: "{{ groups.all }}" + run_once: true + delegate_to: localhost + register: result + changed_when: result.rc == 2 + failed_when: result.rc not in [0, 2] |