From a42fa9711b1be4e6594a3819b206bcdeeacdc297 Mon Sep 17 00:00:00 2001
From: Imran Iqbal <iqbalmy@hotmail.com>
Date: Fri, 8 Oct 2021 22:37:49 +0100
Subject: [PATCH] feat(wait_online): use separate `enabled` & `running` states

---
 systemd/defaults.yaml     | 2 +-
 systemd/networkd/init.sls | 8 ++++++--
 systemd/osfingermap.yaml  | 9 +++++++++
 3 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/systemd/defaults.yaml b/systemd/defaults.yaml
index c49268c..0beec56 100644
--- a/systemd/defaults.yaml
+++ b/systemd/defaults.yaml
@@ -25,7 +25,7 @@ systemd:
     fileattr: {}
     path: /etc/systemd/network
     service: systemd-networkd
-    wait_online: true
+    wait_online: false
 
   resolved:
     config_source: file
diff --git a/systemd/networkd/init.sls b/systemd/networkd/init.sls
index 8c7e197..3d23216 100644
--- a/systemd/networkd/init.sls
+++ b/systemd/networkd/init.sls
@@ -2,6 +2,7 @@
 {%- from "systemd/libtofs.jinja" import files_switch with context -%}
 
 {%- set networkd = systemd.get('networkd', {}) %}
+{%- set service_wait_online = 'systemd-networkd-wait-online' %}
 
 networkd:
   {%- if networkd.pkg %}
@@ -31,8 +32,11 @@ networkd:
     - enable: True
 
 {%- if networkd.wait_online %}
+wait_online-service-enabled:
+  service.enabled:
+    - name: {{ service_wait_online }}
+
 wait_online:
   service.running:
-    - name: systemd-networkd-wait-online
-    - enable: True
+    - name: {{ service_wait_online }}
 {%- endif %}
diff --git a/systemd/osfingermap.yaml b/systemd/osfingermap.yaml
index 3cff5bc..fa5b58c 100644
--- a/systemd/osfingermap.yaml
+++ b/systemd/osfingermap.yaml
@@ -7,15 +7,24 @@
 # Only add an `osfinger` which is/will be supported by the formula
 # (empty `osfinger`s do not need to be listed, just added here as an example).
 ---
+# os_family/os: Debian/Debian
+Debian-9:
+  networkd:
+    wait_online: true
+
 # os_family/os: RedHat/CentOS
 CentOS Linux-7:
   pkgs_extra:
     - systemd-python
+  networkd:
+    wait_online: true
 
 # os_family/os: RedHat/Amazon
 Amazon Linux-2:
   pkgs_extra:
     - systemd-python
+  networkd:
+    wait_online: true
 
 # os_family/os: RedHat/OEL
 Oracle Linux Server-7:
-- 
GitLab