#!/bin/bash ############################ ROOT_D="$1" GROUP_NAME="$2" ############################ printUsage() { echo "Usage: $0 " } if [ -z "$ROOT_D" ] || [ -z "$GROUP_NAME" ]; then printUsage exit 1 fi if [ ! -d "$ROOT_D" ]; then echo "ERROR: can't change to non-existent directory: $ROOT_D" exit 2 fi . ./include.sh PIPE="$ROOT_D/sydra-manager.sock" trap "rm -f $PIPE" EXIT if [[ ! -p $PIPE ]]; then mkfifo $PIPE fi cd "$ROOT_D" echo "00" > show-stream.current while true do if read line <$PIPE; then cmd=${line%% *} arg=${line##* } case $cmd in restart) get_num $arg if [ -z "$NUM" ]; then NUM=$arg; fi supervisorctl restart "$GROUP_NAME:$NUM" NUM='' ;; select) get_num $arg if [ -n "$NUM" ]; then echo "$NUM" > show-stream.current supervisorctl restart "$GROUP_NAME:main" fi NUM='' ;; *) ;; esac fi done exit 0