X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/e61e6ff7581eaf1cb17a46c0e0ba2bacd23e1fb2..a7b1ed6001cee6a8d0848351ce449a68908cb934:/cookbooks/taginfo/templates/default/update-planet.erb diff --git a/cookbooks/taginfo/templates/default/update-planet.erb b/cookbooks/taginfo/templates/default/update-planet.erb index 8fd69ff9e..2eaf6fbb3 100644 --- a/cookbooks/taginfo/templates/default/update-planet.erb +++ b/cookbooks/taginfo/templates/default/update-planet.erb @@ -1,26 +1,49 @@ #!/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" +PLANETPREV="${PLANETDIR}/planet-previous.pbf" +PLANETCURR="${PLANETDIR}/planet.pbf" +PLANETNEW="${PLANETDIR}/planet-new.pbf" +STATEDIR="${PLANETDIR}/replication" +OSCFILE="${PLANETDIR}/$(date +%Y%m%d-%H%M).osc" +OSCFILEPREV="${PLANETDIR}/previous.osc" + +OSMIUM=<%= @directory %>/osmium-tool/build/src/osmium -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 "$PLANETCURR" --buffer bufferCapacity=12000 --apply-change --buffer bufferCapacity=12000 --write-pbf file="$PLANETNEW" +$OSMIUM apply-changes --verbose --remove-deleted --simplify --fsync --output=$PLANETNEW $PLANETCURR $OSCFILE # cleanup -mv planet-new.pbf planet.pbf -rm "$OSCFILE" +mv "$PLANETCURR" "$PLANETPREV" +mv "$PLANETNEW" "$PLANETCURR" +mv "$OSCFILE" "$OSCFILEPREV" + +# expire old logs + +find "${LOGDIR}" -mtime +28 -delete