diff options
Diffstat (limited to 'hyperbot')
-rwxr-xr-x | hyperbot | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/hyperbot b/hyperbot new file mode 100755 index 0000000..1466ff2 --- /dev/null +++ b/hyperbot @@ -0,0 +1,49 @@ +#! /bin/bash + +if [[ "${1}" == 'start' ]] +then + declare -a pids + + cd /srv/hyperbot/ + + ./envbot & + pids[0]=$! + + ./hyperbot_fixer & + pids[1]=$! + + ./issues_change_detector & + pids[2]=$! + + function closedown + { + for pid in ${pids[@]} + do + kill $pid + done + + exit + } + + trap "closedown" SIGINT SIGTERM + + while true + do + sleep 5h + done +elif [[ "${1}" == 'stop' ]] +then + while true + do + pid=$(pgrep -u hyperbot | head -1) + + if [[ -n "${pid}" ]] + then + kill ${pid} &>/dev/null + else + exit + fi + done +else + echo "first arg must be \`start' or \`stop'" +fi |