From 502bfbfda5fa54c3a036a9ea5ecff41d3dbc92ef Mon Sep 17 00:00:00 2001 From: Dmitriy Rabotyagov Date: Mon, 10 Apr 2023 15:52:49 +0200 Subject: [PATCH] Ensure service is restarted on unit file changes At the moment we don't restart services if systemd unit file is changed. We knowingly prevent systemd_service role handlers to execute by providing `state: started` as otherwise service will be restarted twice. With that now we ensure that role handlers will also listen for systemd unit changes. Change-Id: I5d491104173dc0217fac62618c13e8ac5a57233b --- handlers/main.yml | 2 ++ tasks/main.yml | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/handlers/main.yml b/handlers/main.yml index b31fb1c..ff1bf72 100644 --- a/handlers/main.yml +++ b/handlers/main.yml @@ -25,6 +25,7 @@ listen: - "Restart cloudkitty services" - "venv changed" + - "systemd service changed" - name: Start services systemd: @@ -38,3 +39,4 @@ listen: - "Restart cloudkitty services" - "venv changed" + - "systemd service changed" diff --git a/tasks/main.yml b/tasks/main.yml index f590ea9..ea224a1 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -179,8 +179,8 @@ systemd_TasksAccounting: true systemd_services: - service_name: "{{ service_var.service_name }}" - enabled: yes - state: started + enabled: "{{ service_var.enabled | default(True) }}" + state: "{{ service_var.state | default('started') }}" execstarts: "{{ service_var.execstarts }}" execreloads: "{{ service_var.execreloads | default([]) }}" config_overrides: "{{ service_var.init_config_overrides }}"