]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/mediawiki/resources/site.rb
nominatim: add automatic migration on updates
[chef.git] / cookbooks / mediawiki / resources / site.rb
index 60034adf943f5afc6b025b335b783f86d1ff549d..d3fd852eef860ee2979b34aff5a10b3aba579b6f 100644 (file)
@@ -44,7 +44,11 @@ property :recaptcha_public_key, :kind_of => String
 property :recaptcha_private_key, :kind_of => String
 property :extra_file_extensions, :kind_of => [String, Array], :default => []
 property :fpm_max_children, :kind_of => Integer, :default => 5
 property :recaptcha_private_key, :kind_of => String
 property :extra_file_extensions, :kind_of => [String, Array], :default => []
 property :fpm_max_children, :kind_of => Integer, :default => 5
+property :fpm_start_servers, :kind_of => Integer, :default => 2
+property :fpm_min_spare_servers, :kind_of => Integer, :default => 1
+property :fpm_max_spare_servers, :kind_of => Integer, :default => 3
 property :fpm_request_terminate_timeout, :kind_of => Integer, :default => 300
 property :fpm_request_terminate_timeout, :kind_of => Integer, :default => 300
+property :fpm_prometheus_port, :kind_of => Integer
 property :reload_apache, :kind_of => [TrueClass, FalseClass], :default => true
 
 action :create do
 property :reload_apache, :kind_of => [TrueClass, FalseClass], :default => true
 
 action :create do
@@ -105,8 +109,6 @@ action :create do
     mode "775"
   end
 
     mode "775"
   end
 
-  mediawiki_reference = "REL#{new_resource.version}".tr(".", "_")
-
   git mediawiki_directory do
     action :sync
     repository "https://gerrit.wikimedia.org/r/mediawiki/core.git"
   git mediawiki_directory do
     action :sync
     repository "https://gerrit.wikimedia.org/r/mediawiki/core.git"
@@ -454,6 +456,13 @@ action :create do
     update_site false
   end
 
     update_site false
   end
 
+  mediawiki_extension "OSMCALWikiWidget" do
+    site new_resource.site
+    repository "https://github.com/thomersch/OSMCALWikiWidget.git"
+    tag "live"
+    update_site false
+  end
+
   mediawiki_extension "SimpleMap" do
     site new_resource.site
     template "mw-ext-SimpleMap.inc.php.erb"
   mediawiki_extension "SimpleMap" do
     site new_resource.site
     template "mw-ext-SimpleMap.inc.php.erb"
@@ -521,12 +530,16 @@ action :create do
 
   php_fpm new_resource.site do
     pm_max_children new_resource.fpm_max_children
 
   php_fpm new_resource.site do
     pm_max_children new_resource.fpm_max_children
+    pm_start_servers new_resource.fpm_start_servers
+    pm_min_spare_servers new_resource.fpm_min_spare_servers
+    pm_max_spare_servers new_resource.fpm_max_spare_servers
     request_terminate_timeout new_resource.fpm_request_terminate_timeout
     php_admin_values "open_basedir" => "#{site_directory}/:/usr/share/php/:/dev/null:/tmp/"
     php_values "memory_limit" => "500M",
                "max_execution_time" => "240",
                "upload_max_filesize" => "70M",
                "post_max_size" => "100M"
     request_terminate_timeout new_resource.fpm_request_terminate_timeout
     php_admin_values "open_basedir" => "#{site_directory}/:/usr/share/php/:/dev/null:/tmp/"
     php_values "memory_limit" => "500M",
                "max_execution_time" => "240",
                "upload_max_filesize" => "70M",
                "post_max_size" => "100M"
+    prometheus_port new_resource.fpm_prometheus_port
   end
 
   apache_site new_resource.site do
   end
 
   apache_site new_resource.site do
@@ -600,6 +613,17 @@ action_class do
     new_resource.directory || "/srv/#{new_resource.site}"
   end
 
     new_resource.directory || "/srv/#{new_resource.site}"
   end
 
+  def mediawiki_reference
+    shell_out!("git", "ls-remote", "--refs", "--sort=-version:refname",
+               "https://gerrit.wikimedia.org/r/mediawiki/core.git",
+               "refs/tags/#{new_resource.version}.*")
+      .stdout
+      .split("\n")
+      .first
+      .split("/")
+      .last
+  end
+
   def cron_name
     new_resource.site.tr(".", "_")
   end
   def cron_name
     new_resource.site.tr(".", "_")
   end