Hi systemd folks, (service and timer files being discussed at the bottom)
we are currently reworking the way automatic updates and upgrades work on Ubuntu and Debian systems. We basically have two persistent timers with associated services: 1. apt-daily - Downloads new lists and packages 2. apt-daily-upgrade - Performs upgrades The first job should run spread out through the day (we run it twice due to some other reasons), the latter in the morning between 6 and 7, and at boot, daily-upgrade should be resumed after daily (so we added After ordering relations to apt-daily-upgrade timer and service). Now, we seem to be missing one bit: If daily-upgrade is already running, and daily is about to start, daily should wait for daily-upgrade to finish. I had hoped that maybe that works automatically given that there is some ordering relation between the two, but that did not work out. I tried adding Conflicts, but systemd then said "loop to fast" and became unresponsive (not sure if caused by this, but maybe). Is there a way to make this work in systemd, or do we need to add locking to the script invocation (like s#ExecStart=#ExecStart=/usr/bin/flock /path/to/lock#)? Here are the services and timers. Any help would be appreciated. ==> apt-daily.service <== [Unit] Description=Daily apt download activities Documentation=man:apt(8) ConditionACPower=true [Service] Type=oneshot ExecStart=/usr/lib/apt/apt.systemd.daily update ==> apt-daily.timer <== [Unit] Description=Daily apt download activities After=network-online.target Wants=network-online.target [Timer] OnCalendar=*-*-* 6,18:00 RandomizedDelaySec=12h Persistent=true [Install] WantedBy=timers.target ==> apt-daily-upgrade.service <== [Unit] Description=Daily apt upgrade and clean activities Documentation=man:apt(8) ConditionACPower=true After=apt-daily.service [Service] Type=oneshot ExecStart=/usr/lib/apt/apt.systemd.daily install ==> apt-daily-upgrade.timer <== [Unit] Description=Daily apt upgrade and clean activities After=apt-daily.timer [Timer] OnCalendar=*-*-* 6:00 RandomizedDelaySec=60m Persistent=true [Install] WantedBy=timers.target -- Julian Andres Klode - Debian Developer, Ubuntu Member See http://wiki.debian.org/JulianAndresKlode and http://jak-linux.org/. _______________________________________________ systemd-devel mailing list systemd-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/systemd-devel