#!/bin/bash GAME=$1 [ "$ENABLED" != "yes" ] && exit [ -z ${ERESSEA} ] && ERESSEA=$HOME/eressea export ERESSEA BIN=$ERESSEA/server/bin TURN=$(cat $ERESSEA/game-$GAME/turn) if [ ! -e $ERESSEA/game-$GAME/data/$TURN.dat ]; then echo "data file $TURN is missing, cannot run turn for game $GAME" exit 1 fi REPORTS=$ERESSEA/game-$GAME/reports if [ -d $REPORTS ]; then rm -rf $REPORTS fi mkdir $REPORTS cd $ERESSEA/game-$GAME # wait for the queue lock to go away maxt=5 to=5 while [ -e orders.queue.lock ] ; do echo "waiting for orders to finish processing." sleep $to let to=$to+$to let mast=$maxt-1 [ $maxt -lt 0 ] && break done if [ -d test ]; then touch test/execute.lock fi $BIN/create-orders $GAME $TURN $BIN/backup-eressea $GAME $TURN rm -f execute.lock $BIN/run-turn $GAME $TURN touch execute.lock if [ ! -s $ERESSEA/game-$GAME/orders.$TURN ]; then echo "server did not create orders for turn $TURN in game $GAME" exit 2 fi if [ ! -s $REPORTS/reports.txt ]; then echo "server did not create reports.txt in game $GAME" exit 4 fi $BIN/backup-eressea $GAME $TURN let TURN=$TURN+1 if [ ! -s $ERESSEA/game-$GAME/data/$TURN.dat ]; then echo "server did not create data for turn $TURN in game $GAME" exit 3 fi echo "sending reports for game $GAME, turn $TURN" $BIN/compress.sh $GAME $TURN $BIN/sendreports.sh $GAME $BIN/backup-eressea $GAME $TURN rm -f test/execute.lock