2012-05-27 17:39:50 +02:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
LOG_DESTINATION=/var/gdclog
|
|
|
|
|
|
|
|
if [ -e gdc.lock ] ; then
|
|
|
|
echo -e "GDC already running.\n"
|
|
|
|
exit 1
|
|
|
|
fi
|
|
|
|
|
|
|
|
touch gdc.lock
|
|
|
|
|
|
|
|
games=(
|
|
|
|
"CStrike"
|
|
|
|
)
|
|
|
|
|
|
|
|
email_test=(
|
|
|
|
"self@example.com"
|
|
|
|
)
|
|
|
|
|
|
|
|
email_all=(
|
|
|
|
"self@example.com"
|
|
|
|
)
|
|
|
|
|
|
|
|
email_cstrike=(
|
|
|
|
"css-op@example.com"
|
|
|
|
"css-op2@example.com"
|
|
|
|
"css-op3@example.com"
|
|
|
|
)
|
|
|
|
|
|
|
|
for i in "${games[@]}"
|
|
|
|
do
|
|
|
|
lcgame=$(echo $i | tr '[A-Z]' '[a-z]')
|
|
|
|
|
|
|
|
filename=$(date +%Y-%m-%d-%H%M%S)-${lcgame}.log
|
|
|
|
fullfilename=log/$filename
|
|
|
|
|
2013-04-30 02:51:54 +02:00
|
|
|
./gdc_${lcgame}.sh auto 2>&1 | tee -a ${fullfilename}
|
2012-05-27 17:39:50 +02:00
|
|
|
|
|
|
|
if [ ${PIPESTATUS[0]} -ne 0 ] ; then
|
|
|
|
echo -e "No change. Removing useless log.\n"
|
|
|
|
rm $fullfilename
|
|
|
|
else
|
|
|
|
cp $fullfilename $LOG_DESTINATION
|
|
|
|
|
|
|
|
|
|
|
|
if [ "$1" == "test" ] ; then
|
|
|
|
for j in "${email_test[@]}"
|
|
|
|
do
|
|
|
|
echo -e "Sending test email to ${j}\n"
|
|
|
|
mutt -s "$i GDC update" $j < $fullfilename
|
|
|
|
done
|
|
|
|
|
|
|
|
if [ "$2" == "log" ] ; then
|
|
|
|
# when testing, don't write to log unless we really want the bot to show it
|
|
|
|
echo $(date +%s),${filename},$i >> ~/gdclog
|
|
|
|
fi
|
|
|
|
else
|
|
|
|
# log for pickup by bot
|
|
|
|
echo $(date +%s),${filename},$i >> ~/gdclog
|
|
|
|
|
|
|
|
for j in "${email_all[@]}"
|
|
|
|
do
|
|
|
|
echo -e "Sending email to ${j}\n"
|
|
|
|
mutt -s "$i GDC update" $j < $fullfilename
|
|
|
|
done
|
|
|
|
|
|
|
|
varname=email_$lcgame
|
|
|
|
eval k=\${#$varname[@]}
|
|
|
|
|
|
|
|
max=($k - 1)
|
|
|
|
|
|
|
|
for (( m=0; m < $max; m++ ));
|
|
|
|
do
|
|
|
|
eval k=\${$varname[m]}
|
|
|
|
echo -e "Sending email to ${k}\n"
|
|
|
|
mutt -s "$i GDC update" $k < $fullfilename
|
|
|
|
done
|
|
|
|
fi # just testing
|
|
|
|
|
|
|
|
fi
|
|
|
|
done
|
|
|
|
|
|
|
|
rm -f gdc.lock
|