From 03516109aa1179a469de8aa10166583db21dbd59 Mon Sep 17 00:00:00 2001 From: "Antonio J. Delgado" Date: Sat, 8 Apr 2023 14:23:04 +0300 Subject: [PATCH] Chagne cron for system units --- defaults/main.yml | 3 ++- tasks/configure.yml | 28 ++++++++++++++++++++++++++++ templates/ping_wg_server.service.j2 | 13 +++++++++++++ templates/ping_wg_server.timer.j2 | 7 +++++++ 4 files changed, 50 insertions(+), 1 deletion(-) create mode 100644 templates/ping_wg_server.service.j2 create mode 100644 templates/ping_wg_server.timer.j2 diff --git a/defaults/main.yml b/defaults/main.yml index 044de6b..c06d8fd 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -5,5 +5,6 @@ privatekey: '' interface_name: wg0 server_publickey: '' server_address: '192.168.2.1' +ping_schedule: 1h endpoint: '' -dns: '1.1.1.1' \ No newline at end of file +dns: '1.1.1.1' diff --git a/tasks/configure.yml b/tasks/configure.yml index 59cb306..4f60444 100644 --- a/tasks/configure.yml +++ b/tasks/configure.yml @@ -47,6 +47,34 @@ - name: Ensure cron to ping VPN server exists cron: name: Ping Hiljainen + state: absent job: ping -c 3 192.168.2.4 &> /dev/null hour: '1' user: gestor + +- name: Ensure service unit to ping server exists + template: + src: templates/ping_wg_server.service.j2 + dest: '/etc/systemd/system/ping_wg_server.service' + backup: yes + +- name: Ensure timer unit to ping server exists + template: + src: templates/ping_wg_server.timer.j2 + dest: '/etc/systemd/system/ping_wg_server.timer' + backup: yes + +- name: Ensure ping systemd service unit is enabled + systemd: + name: ping_wg_server.service + enabled: true + daemon_reload: true + masked: false + +- name: Ensure ping systemd timer unit is enabled + systemd: + name: ping_wg_server.timer + state: started + enabled: true + daemon_reload: true + masked: false diff --git a/templates/ping_wg_server.service.j2 b/templates/ping_wg_server.service.j2 new file mode 100644 index 0000000..7d86e59 --- /dev/null +++ b/templates/ping_wg_server.service.j2 @@ -0,0 +1,13 @@ +[Unit] +After=network.target +Wants=nss-lookup.target +Before=nss-lookup.target +OnFailure=status_email_antoniodelgado@%n.service + +[Service] +Type=simple +User=gestor +ExecStart=ping -c 3 {{ server_address }} + +[Install] +WantedBy=multi-user.target diff --git a/templates/ping_wg_server.timer.j2 b/templates/ping_wg_server.timer.j2 new file mode 100644 index 0000000..6b3e55d --- /dev/null +++ b/templates/ping_wg_server.timer.j2 @@ -0,0 +1,7 @@ +[Timer] +OnBootSec={{ ping_schedule }} +OnUnitActiveSec={{ ping_schedule }} +Unit=ping_wg_server.service + +[Install] +WantedBy=timers.target