From 3877d4bff58d75fc5bb1fa8174a3e1b62990601d Mon Sep 17 00:00:00 2001 From: Thomas Lamprecht Date: Mon, 12 Mar 2018 14:14:05 +0100 Subject: [PATCH] pveupdate: replace cron job with systemd timer Signed-off-by: Thomas Lamprecht --- bin/init.d/Makefile | 2 ++ bin/init.d/pve-daily-update.service | 9 +++++++++ bin/init.d/pve-daily-update.timer | 10 ++++++++++ debian/postinst | 17 +++-------------- 4 files changed, 24 insertions(+), 14 deletions(-) create mode 100644 bin/init.d/pve-daily-update.service create mode 100644 bin/init.d/pve-daily-update.timer diff --git a/bin/init.d/Makefile b/bin/init.d/Makefile index 45180244..f0fc7f9c 100644 --- a/bin/init.d/Makefile +++ b/bin/init.d/Makefile @@ -11,6 +11,8 @@ SERVICES= \ pveproxy.service \ spiceproxy.service \ pve-storage.target \ + pve-daily-update.service\ + pve-daily-update.timer \ pvesr.service \ pvesr.timer diff --git a/bin/init.d/pve-daily-update.service b/bin/init.d/pve-daily-update.service new file mode 100644 index 00000000..f174241f --- /dev/null +++ b/bin/init.d/pve-daily-update.service @@ -0,0 +1,9 @@ +[Unit] +Description=Daily PVE download activities +After=network-online.target +Wants=network-online.target + +[Service] +Type=oneshot +ExecStart=/usr/bin/pveupdate + diff --git a/bin/init.d/pve-daily-update.timer b/bin/init.d/pve-daily-update.timer new file mode 100644 index 00000000..bf8d0b54 --- /dev/null +++ b/bin/init.d/pve-daily-update.timer @@ -0,0 +1,10 @@ +[Unit] +Description=Daily PVE download activities + +[Timer] +OnCalendar=*-*-* 2:00 +RandomizedDelaySec=4h +Persistent=true + +[Install] +WantedBy=timers.target diff --git a/debian/postinst b/debian/postinst index 9b91d584..62ea8903 100755 --- a/debian/postinst +++ b/debian/postinst @@ -32,26 +32,15 @@ case "$1" in mkdir /etc/pve 2>/dev/null || true - # remove old cron.daily update job to randomize it - if test -e /etc/cron.daily/pve; then - echo "Remove old update script from cron.daily" - rm /etc/cron.daily/pve - fi - if dpkg --compare-versions "$2" '<=' '5.1-47'; then + # remove cron update job, superseded by systemd timer + rm -f /etc/cron.d/pveupdate + # remove old/unused init.d files OLD_INITD_FILES="pvebanner pvenetcommit pve-manager pvedaemon pveproxy pvestatd spiceproxy" for f in ${OLD_INITD_FILES}; do rm -f "/etc/init.d/$f"; done fi - # create new daily randomize update cronjob if not exist - MIN="$(shuf -i 0-59 -n 1)" - HOUR="$(shuf -i 2-5 -n 1)" - cat </etc/cron.d/pveupdate -# automatically generated - do not edit -${MIN} ${HOUR} * * * root /usr/bin/pveupdate -EOF - if test ! -e /var/lib/pve-manager/apl-info/download.proxmox.com; then mkdir -p /var/lib/pve-manager/apl-info cp /usr/share/doc/pve-manager/aplinfo.dat /var/lib/pve-manager/apl-info/download.proxmox.com -- 2.39.5