[pdm-devel] [PATCH 2/2] build: properly reload services after upgrade

Fabian Grünbichler f.gruenbichler at proxmox.com
Mon Dec 23 14:08:52 CET 2024


instead of using the default restart action.

Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---
 debian/proxmox-datacenter-manager.postinst | 28 ++++++++++++++++++++++
 debian/proxmox-datacenter-manager.prerm    | 14 +++++++++++
 debian/rules                               |  5 ++++
 3 files changed, 47 insertions(+)
 create mode 100755 debian/proxmox-datacenter-manager.postinst
 create mode 100755 debian/proxmox-datacenter-manager.prerm

diff --git a/debian/proxmox-datacenter-manager.postinst b/debian/proxmox-datacenter-manager.postinst
new file mode 100755
index 0000000..7e07d01
--- /dev/null
+++ b/debian/proxmox-datacenter-manager.postinst
@@ -0,0 +1,28 @@
+#!/bin/sh
+
+set -e
+
+#DEBHELPER#
+
+case "$1" in
+  configure)
+    # modeled after dh_systemd_start output
+    systemctl --system daemon-reload >/dev/null || true
+    if [ -n "$2" ]; then
+      _dh_action=try-reload-or-restart
+    else
+      _dh_action=start
+    fi
+    deb-systemd-invoke $_dh_action 'proxmox-datacenter-api.service' 'proxmox-datacenter-privileged-api.service' >/dev/null || true
+    ;;
+
+  abort-upgrade|abort-remove|abort-deconfigure)
+    ;;
+
+  *)
+    echo "postinst called with unknown argument \`$1'" >&2
+    exit 1
+    ;;
+esac
+
+exit 0
diff --git a/debian/proxmox-datacenter-manager.prerm b/debian/proxmox-datacenter-manager.prerm
new file mode 100755
index 0000000..efeeebc
--- /dev/null
+++ b/debian/proxmox-datacenter-manager.prerm
@@ -0,0 +1,14 @@
+#!/bin/sh
+
+set -e
+
+#DEBHELPER#
+
+# modeled after dh_systemd_start output
+if [ -d /run/systemd/system ] && [ "$1" = remove ]; then
+    deb-systemd-invoke stop 'proxmox-datacenter-api.service' \
+        'proxmox-datacenter-manager-banner.service' \
+        'proxmox-datacenter-manager-daily-update.timer' \
+        'proxmox-datacenter-privileged-api.service' \
+        >/dev/null || true
+fi
diff --git a/debian/rules b/debian/rules
index b2dc88d..86652b0 100755
--- a/debian/rules
+++ b/debian/rules
@@ -35,5 +35,10 @@ override_dh_strip:
 	  debian/scripts/elf-strip-unused-dependencies.sh "$$exe" || true; \
 	done
 
+override_dh_installsystemd:
+	dh_installsystemd -pproxmox-datacenter-manager  proxmox-datacenter-manager-daily-update.timer
+	# note: we start/try-reload-restart services manually in postinst
+	dh_installsystemd --no-start --no-restart-after-upgrade --no-stop-on-upgrade
+
 override_dh_missing:
 	dh_missing --fail-missing
-- 
2.39.5





More information about the pdm-devel mailing list