Some of the early code I wrote probably wouldn't pass my own reviews today. Here's one example of a rare deadlock that could sometimes occur when a Process/CheckApply caused a shutdown, but the bufio tried to send on a channel that nobody was going to read any more. Now we properly unblock that send with a context.
13 lines
476 B
Bash
Executable File
13 lines
476 B
Bash
Executable File
#!/bin/bash -e
|
|
|
|
. "$(dirname "$0")/../util.sh"
|
|
|
|
# should take a few seconds plus converged timeout, and test we don't hang!
|
|
# TODO: should we return a different exit code if the resources fail?
|
|
# TODO: should we be converged if one of the resources has permanently failed?
|
|
$TIMEOUT "$MGMT" run --converged-timeout=15 --no-watch --no-pgp --tmp-prefix yaml --yaml exec-fail.yaml &
|
|
# there's no ^C sent... it should shutdown on its own
|
|
pid=$!
|
|
wait $pid # get exit status
|
|
exit $?
|