From e6a05e9c6c9cffe181e971e517df279a01551b4c Mon Sep 17 00:00:00 2001 From: Nikolaos Kakouros Date: Tue, 3 Oct 2017 00:14:35 +0200 Subject: [PATCH 1/2] Modprobes the tun/tap interface --- tasks/configure.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/tasks/configure.yml b/tasks/configure.yml index 4ee8c56..c95cf54 100644 --- a/tasks/configure.yml +++ b/tasks/configure.yml @@ -92,3 +92,20 @@ - name: Set ip forwarding in the sysctl file and reload if necessary sysctl: name="net.ipv4.ip_forward" value=1 sysctl_set=yes state=present reload=yes + +- name: Test if interface is created + command: "ip link show {{ openvpn_dev }}0" + register: dev_created + changed_when: false + failed_when: not (dev_created.rc == 0 or dev_created.rc == 1) +- block: + - name: Enable tun0 + command: "modprobe {{ openvpn_dev }} --first-time" + register: modprobe + changed_when: modprobe.stdout.find("Module already in kernel") or modprobe.rc == 0 + failed_when: !(modprobe.stdout.find("Module already in kernel") or modprobe.rc == 0) + - name: Restart openvpn service + systemd: + name: openvpn + state: restarted + when: dev_created.changed == false From 903d4143e9afcc1268d74836c4afa2199577804f Mon Sep 17 00:00:00 2001 From: Nikolaos Kakouros Date: Tue, 3 Oct 2017 00:29:53 +0200 Subject: [PATCH 2/2] Fixes changes anf failures --- tasks/configure.yml | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/tasks/configure.yml b/tasks/configure.yml index c95cf54..e2c3968 100644 --- a/tasks/configure.yml +++ b/tasks/configure.yml @@ -97,15 +97,12 @@ command: "ip link show {{ openvpn_dev }}0" register: dev_created changed_when: false - failed_when: not (dev_created.rc == 0 or dev_created.rc == 1) + failed_when: false - block: - name: Enable tun0 command: "modprobe {{ openvpn_dev }} --first-time" register: modprobe - changed_when: modprobe.stdout.find("Module already in kernel") or modprobe.rc == 0 - failed_when: !(modprobe.stdout.find("Module already in kernel") or modprobe.rc == 0) - - name: Restart openvpn service - systemd: - name: openvpn - state: restarted - when: dev_created.changed == false + changed_when: not modprobe.stdout.find("Module already in kernel") or modprobe.rc == 0 + failed_when: not (modprobe.stdout.find("Module already in kernel") or modprobe.rc == 0) + notify: openvpn restart + when: dev_created.stdout.find("does not exist") != -1