]> git.proxmox.com Git - pve-manager.git/commitdiff
add systemd timer unit to trigger pvesr run
authorWolfgang Link <w.link@proxmox.com>
Fri, 2 Jun 2017 09:21:46 +0000 (11:21 +0200)
committerDietmar Maurer <dietmar@proxmox.com>
Fri, 23 Jun 2017 08:20:34 +0000 (10:20 +0200)
bin/init.d/Makefile
bin/init.d/pvesr.service [new file with mode: 0644]
bin/init.d/pvesr.timer [new file with mode: 0644]
debian/postinst
debian/postrm

index ed396d4ea45c8e3e2da06ea3ad9fa120cc9f32e3..d6ac3782ae96fb708f3b5483ea13995d3f280289 100644 (file)
@@ -18,7 +18,9 @@ SERVICES=                     \
        pvedaemon.service       \
        pveproxy.service        \
        spiceproxy.service      \
-       pve-storage.target
+       pve-storage.target      \
+       pvesr.service           \
+       pvesr.timer
 
 .PHONY: install 
 install: ${SCRIPTS}
diff --git a/bin/init.d/pvesr.service b/bin/init.d/pvesr.service
new file mode 100644 (file)
index 0000000..7ec2b6b
--- /dev/null
@@ -0,0 +1,5 @@
+[Unit]
+Description=Proxmox VE replication runner
+
+[Service]
+ExecStart=@/usr/bin/pvesr "/usr/bin/pvesr" "run"
diff --git a/bin/init.d/pvesr.timer b/bin/init.d/pvesr.timer
new file mode 100644 (file)
index 0000000..bd8aeb0
--- /dev/null
@@ -0,0 +1,11 @@
+[Unit]
+Description=Proxmox VE replication runner
+
+[Timer]
+RemainAfterElapse=no
+
+[Timer]
+OnCalendar=minutely
+
+[Install]
+WantedBy=timers.target
\ No newline at end of file
index 6aac8f85a3346d29e18d821d0a0b005a624be89a..aa30f708ead4b200f51c1a496f6dba183a4b847a 100755 (executable)
@@ -95,6 +95,21 @@ EOF
 
     # same as dh_systemd_enable (code copied)
 
+    for timer in pvesr; do
+       deb-systemd-helper unmask $timer.timer >/dev/null || true
+
+       # was-enabled defaults to true, so new installations run enable.
+       if deb-systemd-helper --quiet was-enabled $timer.timer; then
+           # Enables the unit on first installation, creates new
+           # symlinks on upgrades if the unit file has changed.
+           deb-systemd-helper enable $timer.timer >/dev/null || true
+       else
+           # Update the statefile to add new symlinks (if any), which need to be
+           # cleaned up on purge. Also remove old symlinks.
+           deb-systemd-helper update-state $timer.timer >/dev/null || true
+       fi
+    done
+
     for service in pvedaemon pveproxy spiceproxy pvestatd pvebanner pvenetcommit pve-manager; do
        deb-systemd-helper unmask $service.service >/dev/null || true
 
@@ -115,6 +130,8 @@ EOF
        for service in pvedaemon pveproxy spiceproxy pvestatd; do
            deb-systemd-invoke reload-or-restart $service
        done
+
+       deb-systemd-invoke start pvesr.timer >/dev/null || true
     fi
     
     # rewrite banner
index 442396a651fe2ce2799c07c7f889a05c26ca9cda..4792bb9a7e87f736e04d38b7a4e788591e39d103 100755 (executable)
@@ -23,7 +23,14 @@ esac
 systemctl --system daemon-reload >/dev/null || true
 
 PVESERVICES="pvedaemon pveproxy spiceproxy pvestatd pvebanner pvenetcommit pve-manager"
+PVETIMERS="pvesr"
+
 if [ "$1" = "remove" ]; then
+    for timer in ${PVETIMERS}; do
+       if [ -x "/usr/bin/deb-systemd-helper" ]; then
+           deb-systemd-helper mask $timer.timer >/dev/null
+       fi
+    done
     for service in ${PVESERVICES}; do
        if [ -x "/usr/bin/deb-systemd-helper" ]; then
            deb-systemd-helper mask $service.service >/dev/null
@@ -32,6 +39,12 @@ if [ "$1" = "remove" ]; then
 fi
 
 if [ "$1" = purge ]; then
+    for timer in ${PVETIMERS}; do
+       if [ -x "/usr/bin/deb-systemd-helper" ]; then
+           deb-systemd-helper purge $timer.timer >/dev/null
+           deb-systemd-helper unmask $timer.timer >/dev/null
+       fi
+    done
     for service in ${PVESERVICES}; do
        if [ -x "/usr/bin/deb-systemd-helper" ]; then
            deb-systemd-helper purge $service.service >/dev/null