This repository has been archived on 2025-02-14. You can view files and clone it, but cannot push or open issues or pull requests.
pyinfra-lxd/templates/zfs-scrub.sh.j2
2021-02-06 17:03:07 +09:00

18 lines
534 B
Django/Jinja

#!/usr/bin/env bash
# https://serverfault.com/questions/538978/how-to-run-a-command-once-a-zfs-scrub-completes
set -euo pipefail
curl -m 10 --retry 5 {{ host.data.zfs_healthchecks }}/start
zpool scrub local
# wait until scrub is finished
while zpool status local | grep -q 'scan: *scrub in progress'; do
zpool status local
sleep 600
done
zpool status local
# Get stdout from journalctl
LOG=$(journalctl -o cat -r -u zfs-scrub.service -n 100)
curl -fsS -m 10 --retry 5 --data-raw "$LOG" {{ host.data.zfs_healthchecks }}
exit 0