#!/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