diff --git a/Rakefile b/Rakefile index 61c6bfbd1..f4fcbcf08 100644 --- a/Rakefile +++ b/Rakefile @@ -1,8 +1,9 @@ +testdata_folder = "testdata" #where to locate test data sandbox = "sandbox" #where to locate builds, server configs and test data -osm_data = "amager" #name of OSM data file +area_name = "amager" #name of OSM data file desc "Rebuild, reprocess OSM data and run server" -task :default => [:build, "data:process", :run] +task :default => [:build, :process, :run] desc "Build with Scons" task :build do @@ -10,30 +11,28 @@ task :build do end -file "#{sandbox}/amager.osm.pbf" => "amager.osm.pbf" do |t| +file "#{sandbox}/#{area_name}.osm.pbf" => "#{testdata_folder}/#{area_name}.osm.pbf" do |t| raise unless system "cp #{t.prerequisites.join} #{t.name}" end -namespace :data do - desc "Process OSM test data" - task :process => ["#{sandbox}/amager.osm.pbf", :setup] do - prev = Dir.pwd - cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder - raise "Error while extracting data." unless system "./osrm-extract amager.osm.pbf" - raise "Error while preparing data." unless system "./osrm-prepare amager.osrm amager.osrm.restrictions" - cd prev - end +desc "Process OSM test data" +task :process => ["#{sandbox}/#{area_name}.osm.pbf", :setup] do + prev = Dir.pwd + cd sandbox #we must be in the sandbox folder to use the speedprofile.ini in that folder + raise "Error while extracting data." unless system "./osrm-extract #{area_name}.osm.pbf" + raise "Error while preparing data." unless system "./osrm-prepare #{area_name}.osrm #{area_name}.osrm.restrictions" + cd prev +end - desc "Download fresh OSM for the test data" - task :download => :setup do - start = Time.now - country = 'denmark' - bbox = 'top=55.6655 left=12.5589 bottom=55.6462 right=12.5963' - area = 'amager' +desc "Download fresh OSM for the test data" +task :download => :setup do + start = Time.now + country = 'denmark' + bbox = 'top=55.6655 left=12.5589 bottom=55.6462 right=12.5963' + area = area_name - raise "Error while downloading data." unless system "curl http://download.geofabrik.de/osm/europe/#{country}.osm.pbf -o #{sandbox}/#{country}.osm.pbf" - raise "Error while cropping data." unless system "osmosis --read-pbf file=#{sandbox}/#{country}.osm.pbf --bounding-box #{bbox} --write-pbf file=#{sandbox}/#{area}.osm.pbf omitmetadata=true" - end + raise "Error while downloading data." unless system "curl http://download.geofabrik.de/osm/europe/#{country}.osm.pbf -o #{sandbox}/#{country}.osm.pbf" + raise "Error while cropping data." unless system "osmosis --read-pbf file=#{sandbox}/#{country}.osm.pbf --bounding-box #{bbox} --write-pbf file=#{sandbox}/#{area}.osm.pbf omitmetadata=true" end desc "Setup server files" @@ -50,7 +49,7 @@ end file "#{sandbox}/server.ini" => "server.ini" do |t| #first time the file is copied, we adjusts server settings to point to data files in our sandbox folder text = File.read(t.prerequisites.join) - text.gsub!('/opt/osm/germany', "#{Dir.pwd}/sandbox/#{osm_data}") + text.gsub!('/opt/osm/germany', "#{Dir.pwd}/sandbox/#{area_name}") file = File.new( t.name, "w+") file.puts text file.close diff --git a/amager.osm.pbf b/testdata/amager.osm.pbf similarity index 100% rename from amager.osm.pbf rename to testdata/amager.osm.pbf