]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/taginfo/recipes/default.rb
Install taginfo gems using the correct gem binary
[chef.git] / cookbooks / taginfo / recipes / default.rb
index 418bb604aaf3fc33cba10933d437728f2258a4e4..4d9efdefde5959c2df95163512e2c3a0116e7cb7 100644 (file)
@@ -41,13 +41,15 @@ package "osmosis"
 package "curl"
 package "m4"
 
-package "ruby#{node[:passenger][:ruby_version]}"
-package "rubygems#{node[:passenger][:ruby_version]}"
-gem_package "json"
-gem_package "sqlite3"
-gem_package "sinatra"
-gem_package "sinatra-r18n"
-gem_package "rack-contrib"
+ruby_version = node[:passenger][:ruby_version]
+
+package "ruby#{ruby_version}"
+
+%w(json sqlite3 sinatra sinatra-r18n rack-contrib).each do |gem|
+  gem_package gem do
+    gem_binary "gem#{ruby_version}"
+  end
+end
 
 apache_module "cache"
 apache_module "cache_disk"
@@ -165,14 +167,24 @@ node[:taginfo][:sites].each do |site|
     notifies :restart, "service[apache2]"
   end
 
+  directory "#{directory}/osmium-tool/build" do
+    owner "taginfo"
+    group "taginfo"
+    mode "0755"
+    action :create
+    subscribes :create, "git[#{directory}/libosmium]"
+    subscribes :create, "git[#{directory}/osmium-tool]"
+  end
+
   execute "compile-osmium" do
     action :nothing
-    command "mkdir build && cd build && cmake .. && make"
-    cwd "#{directory}/osmium-tool"
+    command "cmake .. && make"
+    cwd "#{directory}/osmium-tool/build"
     user "taginfo"
     group "taginfo"
     subscribes :run, "git[#{directory}/libosmium]"
     subscribes :run, "git[#{directory}/osmium-tool]"
+    subscribes :run, "directory[#{directory}/osmium-tool/build]"
   end
 
   %w(taginfo/web/tmp bin data data/old download sources planet planet/log planet/replication).each do |dir|