]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/web/recipes/cgimap.rb
Make sure cgimap uses the correct backends
[chef.git] / cookbooks / web / recipes / cgimap.rb
index 21a3c4355be5c739cfd0f92339e62a8a6715ff6e..26fb2c41ddc935269810c23517807d521029f810 100644 (file)
@@ -22,6 +22,7 @@ include_recipe "web::base"
 
 db_passwords = data_bag_item("db", "passwords")
 
+package "g++"
 package "gcc"
 package "make"
 package "autoconf"
@@ -85,6 +86,8 @@ else
   database_readonly = node[:web][:status] == "database_readonly"
 end
 
+backends = node[:web][:backends]
+
 cgimap_init = edit_file "#{cgimap_directory}/scripts/cgimap.init" do |line|
   line.gsub!(/^CGIMAP_HOST=.*;/, "CGIMAP_HOST=#{database_host};")
   line.gsub!(/^CGIMAP_DBNAME=.*;/, "CGIMAP_DBNAME=openstreetmap;")
@@ -92,7 +95,10 @@ cgimap_init = edit_file "#{cgimap_directory}/scripts/cgimap.init" do |line|
   line.gsub!(/^CGIMAP_PASSWORD=.*;/, "CGIMAP_PASSWORD=#{db_passwords['rails']};")
   line.gsub!(/^CGIMAP_PIDFILE=.*;/, "CGIMAP_PIDFILE=#{pid_directory}/cgimap.pid;")
   line.gsub!(/^CGIMAP_LOGFILE=.*;/, "CGIMAP_LOGFILE=#{log_directory}/cgimap.log;")
-  line.gsub!(/^CGIMAP_MEMCACHE=.*;/, "CGIMAP_MEMCACHE=rails1,rails2,rails3;")
+  line.gsub!(/^CGIMAP_MEMCACHE=.*;/, "CGIMAP_MEMCACHE=#{backends.join(',')};")
+  line.gsub!(/^CGIMAP_RATELIMIT=.*;/, "CGIMAP_RATELIMIT=204800;")
+
+  line.gsub!(%r{--pidfile \$CGIMAP_PIDFILE --exec /home/rails/bin/map}, "--pidfile $CGIMAP_PIDFILE")
 
   line.gsub!(%r{/home/rails/bin/map}, "#{cgimap_directory}/map")