summaryrefslogtreecommitdiff
path: root/roles/network/wireguard/base/tasks/main.yml
diff options
context:
space:
mode:
Diffstat (limited to 'roles/network/wireguard/base/tasks/main.yml')
-rw-r--r--roles/network/wireguard/base/tasks/main.yml33
1 files changed, 33 insertions, 0 deletions
diff --git a/roles/network/wireguard/base/tasks/main.yml b/roles/network/wireguard/base/tasks/main.yml
new file mode 100644
index 00000000..4d60150d
--- /dev/null
+++ b/roles/network/wireguard/base/tasks/main.yml
@@ -0,0 +1,33 @@
+---
+- name: enable spreadspace repo
+ when: (ansible_distribution == 'Debian' and (ansible_distribution_major_version | int) < 11) or (ansible_distribution == 'Ubuntu' and (ansible_distribution_major_version | int) < 20)
+ import_role:
+ name: apt-repo/spreadspace
+
+- name: install dkms
+ import_role:
+ name: prepare-dkms
+
+- name: install wireguard packages
+ apt:
+ name:
+ - wireguard-dkms
+ - wireguard-tools
+ state: present
+
+- name: check if module is available for the currently running kernel
+ command: modprobe --dry-run wireguard
+ check_mode: no
+ register: wireguard_module_available
+ failed_when: false
+ changed_when: false
+
+- name: rebuild wireguard module
+ when: wireguard_module_available.rc != 0
+ command: dpkg-reconfigure wireguard-dkms
+
+- name: check again if module is available for the currently running kernel
+ when: wireguard_module_available.rc != 0
+ command: modprobe --dry-run wireguard
+ check_mode: no
+ changed_when: false