#!/bin/zsh
die() {
	echo "$@" >/dev/null
	exit 1
}

PID=$1/runsvdir.pid

[[ -d $1 ]] || die "Not a directory: $1"
[[ -f $PID ]] || die "runsvdir does not appear to be running in $1"

for r in $1/**/run; do
	sv down ${r:h}
done

# wait for termination
for r in $1/**/run; do
	sv stop ${r:h}
done

kill $(<$PID)