]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/tile/recipes/default.rb
Make sure the correct gem is used to install ruby packages
[chef.git] / cookbooks / tile / recipes / default.rb
index f11c8dc24f41133a276f343451b813e636d8f1f5..40039b3148d7f351abad41a36fd4e73f575739b3 100644 (file)
@@ -25,6 +25,7 @@ include_recipe "nodejs"
 include_recipe "postgresql"
 include_recipe "prometheus"
 include_recipe "python"
+include_recipe "ruby"
 include_recipe "tools"
 
 blocks = data_bag_item("tile", "blocks")
@@ -163,12 +164,18 @@ python_package "pyotp" do
   python_version "3"
 end
 
-package %w[
+unifont = if node[:lsb][:release].to_f < 22.04
+            "ttf-unifont"
+          else
+            "fonts-unifont"
+          end
+
+package %W[
   fonts-noto-cjk
   fonts-noto-hinted
   fonts-noto-unhinted
   fonts-hanazono
-  ttf-unifont
+  #{unifont}
 ]
 
 ["NotoSansArabicUI-Regular.ttf", "NotoSansArabicUI-Bold.ttf"].each do |font|
@@ -409,6 +416,10 @@ postgresql_user "tile" do
   cluster node[:tile][:database][:cluster]
 end
 
+postgresql_user "www-data" do
+  cluster node[:tile][:database][:cluster]
+end
+
 postgresql_user "_renderd" do
   cluster node[:tile][:database][:cluster]
 end
@@ -443,7 +454,7 @@ end
     cluster node[:tile][:database][:cluster]
     database "gis"
     owner "tile"
-    permissions "tile" => :all, "_renderd" => :select
+    permissions "tile" => :all, "www-data" => :select, "_renderd" => :select
   end
 end
 
@@ -461,6 +472,15 @@ if node[:tile][:database][:external_data_script]
     group "tile"
     ignore_failure true
   end
+
+  Array(node[:tile][:database][:external_data_tables]).each do |table|
+    postgresql_table table do
+      cluster node[:tile][:database][:cluster]
+      database "gis"
+      owner "tile"
+      permissions "tile" => :all, "www-data" => :select, "_renderd" => :select
+    end
+  end
 end
 
 postgresql_munin "gis" do
@@ -489,15 +509,22 @@ end
 
 package %w[
   osm2pgsql
-  ruby
   osmium-tool
   pyosmium
   python3-pyproj
 ]
 
-gem_package "apachelogregex"
-gem_package "file-tail"
-gem_package "lru_redux"
+gem_package "apachelogregex" do
+  gem_binary node[:ruby][:gem]
+end
+
+gem_package "file-tail" do
+  gem_binary node[:ruby][:gem]
+end
+
+gem_package "lru_redux" do
+  gem_binary node[:ruby][:gem]
+end
 
 remote_directory "/usr/local/bin" do
   source "bin"
@@ -682,6 +709,8 @@ munin_plugin "renderd_zoom_time"
 
 munin_plugin "replication_delay"
 
+package "ruby-webrick"
+
 prometheus_exporter "modtile" do
   port 9494
 end