X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/93c098cdc4f22b1fe69ecd88b3ac2d2b211780ff..699e157e3d708f38064eea9072aa210fe5ccac30:/cookbooks/forum/recipes/default.rb?ds=sidebyside diff --git a/cookbooks/forum/recipes/default.rb b/cookbooks/forum/recipes/default.rb index 3e2b97d8e..ae32e4d01 100644 --- a/cookbooks/forum/recipes/default.rb +++ b/cookbooks/forum/recipes/default.rb @@ -1,8 +1,8 @@ # -# Cookbook Name:: forum +# Cookbook:: forum # Recipe:: default # -# Copyright 2014, OpenStreetMap Foundation +# Copyright:: 2014, OpenStreetMap Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -16,21 +16,25 @@ # See the License for the specific language governing permissions and # limitations under the License. # + +include_recipe "accounts" include_recipe "apache" include_recipe "git" include_recipe "mysql" +include_recipe "php::fpm" + +cache_dir = Chef::Config[:file_cache_path] passwords = data_bag_item("forum", "passwords") package %w[ - php php-cli php-mysql php-xml php-apcu ] -apache_module "php7.2" +apache_module "env" apache_module "rewrite" ssl_certificate "forum.openstreetmap.org" do @@ -38,6 +42,12 @@ ssl_certificate "forum.openstreetmap.org" do notifies :reload, "service[apache2]" end +php_fpm "forum.openstreetmap.org" do + php_admin_values "open_basedir" => "/srv/forum.openstreetmap.org/html/:/usr/share/php/:/tmp/", + "disable_functions" => "exec,shell_exec,system,passthru,popen,proc_open" + prometheus_port 9253 +end + apache_site "forum.openstreetmap.org" do template "apache.erb" end @@ -45,7 +55,7 @@ end directory "/srv/forum.openstreetmap.org" do owner "forum" group "forum" - mode 0o755 + mode "755" end git "/srv/forum.openstreetmap.org/html/" do @@ -58,23 +68,42 @@ git "/srv/forum.openstreetmap.org/html/" do notifies :reload, "service[apache2]" end +remote_file "#{cache_dir}/air3_v0.8.tar.gz" do + action :create_if_missing + source "https://github.com/natrius/air3/archive/refs/tags/v0.8.tar.gz" + owner "root" + group "root" + mode "644" + backup false +end + +archive_file "#{cache_dir}/air3_v0.8.tar.gz" do + action :nothing + destination "/srv/forum.openstreetmap.org/html/style" + strip_components 1 + overwrite true + owner "forum" + group "forum" + subscribes :extract, "remote_file[#{cache_dir}/air3_v0.8.tar.gz]", :immediately +end + directory "/srv/forum.openstreetmap.org/html/cache/" do owner "www-data" group "www-data" - mode 0o755 + mode "755" end directory "/srv/forum.openstreetmap.org/html/img/avatars/" do owner "www-data" group "www-data" - mode 0o755 + mode "755" end template "/srv/forum.openstreetmap.org/html/config.php" do source "config.php.erb" owner "forum" group "www-data" - mode 0o440 + mode "440" variables :passwords => passwords end @@ -90,6 +119,6 @@ template "/etc/cron.daily/forum-backup" do source "backup.cron.erb" owner "root" group "root" - mode 0o750 + mode "750" variables :passwords => passwords end