+# Define cleanup function
+function cleanup {
+ rm /tmp/planetdump.lock
+}
+
+# Remove lock on exit
+trap cleanup EXIT
+
+# Change to working directory
+cd /store/planetdump
+
+# Cleanup
+rm -rf users
+rm -rf changesets changeset_tags
+rm -rf nodes node_tags
+rm -rf ways way_tags way_nodes
+rm -rf relations relation_tags relation_members
+
+# Run the dump
+time nice -n 19 /opt/planet-dump-ng/planet-dump-ng \
+ -c "pbzip2 -c" -f "/store/backup/${file}" --dense-nodes=1 \
+ -C "changesets-${date}.osm.bz2" \
+ -x "planet-${date}.osm.bz2" -X "history-${date}.osm.bz2" \
+ -p "planet-${date}.osm.pbf" -P "history-${date}.osm.pbf"
+
+# Move XML dumps into place
+<% {
+ "changesets-${date}.osm.bz2" => "#{node[:planet][:dump][:xml_directory]}/${year}",
+ "planet-${date}.osm.bz2" => "#{node[:planet][:dump][:xml_directory]}/${year}",
+ "history-${date}.osm.bz2" => "#{node[:planet][:dump][:xml_history_directory]}/${year}",
+ "planet-${date}.osm.pbf" => node[:planet][:dump][:pbf_directory],
+ "history-${date}.osm.pbf" => node[:planet][:dump][:pbf_history_directory]
+}.each do |file,dir| -%>
+md5sum "<%= file %>" > "<%= file %>.md5"
+mkdir -p "<%= dir %>"
+mv "<%= file %>" "<%= file %>.md5" "<%= dir %>"
+<% end -%>