# Check the lock
if [ -f /tmp/planetdump.lock ]; then
if [ "$(ps -p `cat /tmp/planetdump.lock` | wc -l)" -gt 1 ]; then
- echo "Error: Another planetdump is running"
- exit 1
+ echo "Error: Another planetdump is running"
+ exit 1
else
- rm /tmp/planetdump.lock
+ rm /tmp/planetdump.lock
fi
fi
-# Create Lock
+# Redirect this shell's output to a file. This is so that it
+# can be emailed later, since this script is run from incron
+# and incron doesn't yet support MAILTO like cron does. The
+# command below appears to work in bash as well as dash.
+logfile="/tmp/planetdump.log.$$"
+exec > "${logfile}" 2>&1
+
+# Create lock file
echo $$ > /tmp/planetdump.lock
# Define cleanup function
function cleanup {
+ # Remove the lock file
rm /tmp/planetdump.lock
+
+ # Send an email with the output, since incron doesn't yet
+ # support doing this in the incrontab
+ if [[ -s "$logfile" ]]
+ then
+ mailx -s "Planet dump output: ${file}" zerebubuth@gmail.com < "${logfile}"
+ fi
+
+ # Remove the log file
+ rm -f "${logfile}"
}
# Remove lock on exit
mv "${name}" "${name}.md5" "${dir}/${year}"
ln -sf "${year:-.}/${name}" "${dir}/${latest}"
rm -f "${dir}/${latest}.md5"
- sed -e "s/${name}/${latest}/" > "${dir}/${year}/${name}.md5" > "${dir}/${latest}.md5"
+ sed -e "s/${name}/${latest}/" "${dir}/${year}/${name}.md5" > "${dir}/${latest}.md5"
}
# Move dumps into place