#!/bin/sh
+# DO NOT EDIT - This file is being maintained by Chef
+
+# abort on error
+
set -e
-cd "<%= @directory %>/planet"
+# setup
+
+PLANETDIR="<%= @directory %>/planet"
+LOGDIR="${PLANETDIR}/log"
+PLANETOLD="${PLANETDIR}/planet.pbf"
+PLANETNEW="${PLANETDIR}/planet-new.pbf"
+STATEDIR="${PLANETDIR}/replication"
+OSCFILE="${PLANETDIR}/$(date +%Y%m%d-%H%M).osc"
-OSCFILE="$(date +%Y%m%d-%H%M).osc"
+# start logging
+
+exec > "${LOGDIR}/$(date +%Y%m%d-%H%M).log" 2>&1
# if there are old .osc files, they have to be taken into account
-OLDFILE=2*-*.osc
+OLDFILE="$(find "${PLANETDIR}" -name "2*-*.osc" -print)"
if [ -z "$OLDFILE" ]
then
- osmosis --rri --simc --write-xml-change "$OSCFILE"
+ osmosis --rri "$STATEDIR" --simc --write-xml-change "$OSCFILE"
else
- osmosis --rxc "$OLDFILE" --rri --mc --simc --write-xml-change "$OSCFILE" && rm "$OLDFILE"
+ osmosis --rxc "$OLDFILE" --rri "$STATEDIR" --mc --simc --write-xml-change "$OSCFILE" && rm "$OLDFILE"
fi
# osc file is ready, create new planet file
-osmosis --read-xml-change "$OSCFILE" --read-bin planet.pbf --buffer bufferCapacity=12000 --apply-change --buffer bufferCapacity=12000 --write-pbf planet-new.pbf
+osmosis --read-xml-change "$OSCFILE" --read-bin "$PLANETOLD" --buffer bufferCapacity=12000 --apply-change --buffer bufferCapacity=12000 --write-pbf file="$PLANETNEW"
# cleanup
-mv planet-new.pbf planet.pbf
+mv "$PLANETNEW" "$PLANETOLD"
rm "$OSCFILE"
+
+# expire old logs
+
+find "${LOGDIR}" -mtime +28 -delete