From 57370f807a1d480ab156e2e2c9618352777bd139 Mon Sep 17 00:00:00 2001
From: Thomas Schneider <thomas@fsmpi.rwth-aachen.de>
Date: Mon, 26 Feb 2018 17:50:31 +0100
Subject: [PATCH] Start cron only after network

---
 terminalserver/files/after-network.conf |  2 ++
 terminalserver/handlers/main.yml        |  5 +++++
 terminalserver/tasks/main.yml           | 19 +++++++++++++++++++
 3 files changed, 26 insertions(+)
 create mode 100644 terminalserver/files/after-network.conf
 create mode 100644 terminalserver/handlers/main.yml

diff --git a/terminalserver/files/after-network.conf b/terminalserver/files/after-network.conf
new file mode 100644
index 0000000..6f45f4e
--- /dev/null
+++ b/terminalserver/files/after-network.conf
@@ -0,0 +1,2 @@
+[Unit]
+After=network.target
diff --git a/terminalserver/handlers/main.yml b/terminalserver/handlers/main.yml
new file mode 100644
index 0000000..5ed7f98
--- /dev/null
+++ b/terminalserver/handlers/main.yml
@@ -0,0 +1,5 @@
+- name: Reload systemd
+  systemd: daemon-reload=yes
+
+- name: Restart cron
+  systemd: name=cron state=restarted
diff --git a/terminalserver/tasks/main.yml b/terminalserver/tasks/main.yml
index a625407..209793a 100644
--- a/terminalserver/tasks/main.yml
+++ b/terminalserver/tasks/main.yml
@@ -10,5 +10,24 @@
   tags:
     - packages
 
+- name: Ensure presence of cron.service.d
+  file:
+    path: /etc/systemd/system/cron.service.d
+    state: directory
+  tags:
+    - config
+    - cron
+
+- name: Ensure crond starts after network is available
+  copy:
+    dest: /etc/systemd/system/cron.service.d/after-network.conf
+    src: after-network.conf
+  notify:
+    - Reload systemd
+    - Restart cron
+  tags:
+    - config
+    - cron
+
 - include: x2go.yml
 - meta: flush_handlers
-- 
GitLab