Fix issue #614: restart queue/evaluator on sufficient disk space available.
Only try to stop the service if it is currently running.
Use named variables and added restarting message.
5IMKIE625LYUDGIDLHTX2JFGIFUEAMVAND76KVJG34VOATMQXFZAC S3ONTQMPUAGBDCAX2TZSWI4TEHWK3EI5G74TXDJJ6SWNCEVZ6NLAC TTZ26BJQKIASUK7MT6KGQOIOOHEYWNV4UASO2ZQWGK4ADGK6SR6QC D3MDJONYWWNXVVZDKTPDQE2H2HGMF263LXKT57B2GYCOXNM3PPOQC KMPLMG7TDEVQVZGRXQKG66G6P7LUDELSKRFUO557PQ4WZQI3SBAQC 3FTM52B2FQBNZ4GANKVIFALA757VXJEP3K4QLVJYQSDWIK7IP5VAC ZTF2YQGCUX4ASNQRCXCUZCU74IFN4WDIX67PXXR4RDL54IIDJJFQC ZYEFL36QOB6KUR276RRT4PSAK7HWUJ6TLLZBEZM7SSGUX2WQTMZQC if [ $(($(stat -f -c '%a' /nix/store) * $(stat -f -c '%S' /nix/store))) -lt $((${toString cfg.minimumDiskFree} * 1024**3)) ]; thenecho "stopping Hydra queue runner due to lack of free space..."systemctl stop hydra-queue-runnerfiif [ $(($(stat -f -c '%a' /nix/store) * $(stat -f -c '%S' /nix/store))) -lt $((${toString cfg.minimumDiskFreeEvaluator} * 1024**3)) ]; thenecho "stopping Hydra evaluator due to lack of free space..."systemctl stop hydra-evaluatorfi
spaceleft=$(($(stat -f -c '%a' /nix/store) * $(stat -f -c '%S' /nix/store)))spacestopstart() {service=$1minFreeGB=$2if [ $spaceleft -lt $(($minFreeGB * 1024**3)) ]; thenif [ $(systemctl is-active $service) == active ]; thenecho "stopping $service due to lack of free space..."systemctl stop $servicedate > /var/lib/hydra/.$service-stopped-minspacefielseif [ $spaceleft -gt $(( ($minFreeGB + 10) * 1024**3)) -a \-r /var/lib/hydra/.$service-stopped-minspace ] ; thenrm /var/lib/hydra/.$service-stopped-minspaceecho "restarting $service due to newly available free space..."systemctl start $servicefifi}spacestopstart hydra-queue-runner ${toString cfg.minimumDiskFree}spacestopstart hydra-evaluator ${toString cfg.minimumDiskFreeEvaluator}