Public-Helperscripts/distributed_cron.sh

30 lines
529 B
Bash
Raw Normal View History

2024-11-15 19:22:29 +01:00
#!/usr/bin/env bash
TIME=$(shuf -i 0-800 -n1)
sleep 0.$TIME
echo "Sleep for 0.$TIME"
echo "Checking cron_lock file"
FILE=$1
if [ ! -f $FILE ]
then
echo $(hostname) > $FILE
echo "Create cron_lock for server"
$2
if [ $? -ne 0 ]
then
echo "FAILED -- $(date) -- $(hostname)" >> $FILE.log
else
echo "OK -- $(date) -- $(hostname)" >> $FILE.log
fi
echo "Job done. Keep lock for 30 seconds"
sleep 30
rm $FILE
exit 0
else
echo "Other Server is running cron job"
exit 0