X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/fca44ca0420b1f3048c2944900cfdef3b34e2509..4177d28331e277e9bd639d28b1cf606f27794c66:/cookbooks/piwik/recipes/default.rb diff --git a/cookbooks/piwik/recipes/default.rb b/cookbooks/piwik/recipes/default.rb index 5317c3596..0a32dda4e 100644 --- a/cookbooks/piwik/recipes/default.rb +++ b/cookbooks/piwik/recipes/default.rb @@ -20,11 +20,11 @@ include_recipe "apache" include_recipe "geoipupdate" include_recipe "mysql" +include_recipe "php::fpm" passwords = data_bag_item("piwik", "passwords") package %w[ - php php-cli php-curl php-mbstring @@ -32,15 +32,15 @@ package %w[ php-gd php-xml php-apcu - unzip ] apache_module "expires" -apache_module "php7.2" apache_module "rewrite" version = node[:piwik][:version] +geoip_directory = node[:geoipupdate][:directory] + directory "/opt/piwik-#{version}" do owner "root" group "root" @@ -52,10 +52,10 @@ remote_file "#{Chef::Config[:file_cache_path]}/piwik-#{version}.zip" do not_if { ::File.exist?("/opt/piwik-#{version}/piwik") } end -execute "unzip-piwik-#{version}" do - command "unzip -q #{Chef::Config[:file_cache_path]}/piwik-#{version}.zip" - cwd "/opt/piwik-#{version}" - user "root" +archive_file "#{Chef::Config[:file_cache_path]}/piwik-#{version}.zip" do + destination "/opt/piwik-#{version}" + overwrite true + owner "root" group "root" not_if { ::File.exist?("/opt/piwik-#{version}/piwik") } end @@ -90,21 +90,27 @@ directory "/opt/piwik-#{version}/piwik/tmp" do mode "0755" end +directory "/opt/piwik-#{version}/piwik/tmp/assets" do + owner "www-data" + group "mysql" + mode "0750" +end + link "/opt/piwik-#{version}/piwik/misc/GeoLite2-ASN.mmdb" do - to "/usr/share/GeoIP/GeoLite2-ASN.mmdb" + to "#{geoip_directory}/GeoLite2-ASN.mmdb" end link "/opt/piwik-#{version}/piwik/misc/GeoLite2-City.mmdb" do - to "/usr/share/GeoIP/GeoLite2-City.mmdb" + to "#{geoip_directory}/GeoLite2-City.mmdb" end link "/opt/piwik-#{version}/piwik/misc/GeoLite2-Country.mmdb" do - to "/usr/share/GeoIP/GeoLite2-Country.mmdb" + to "#{geoip_directory}/GeoLite2-Country.mmdb" end link "/srv/piwik.openstreetmap.org" do to "/opt/piwik-#{version}/piwik" - notifies :restart, "service[apache2]" + notifies :restart, "service[php#{node[:php][:version]}-fpm]" end mysql_user "piwik@localhost" do @@ -120,13 +126,16 @@ ssl_certificate "piwik.openstreetmap.org" do notifies :reload, "service[apache2]" end +php_fpm "piwik.openstreetmap.org" do + prometheus_port 9253 +end + apache_site "piwik.openstreetmap.org" do template "apache.erb" end -template "/etc/cron.d/piwiki" do - source "cron.erb" - owner "root" - group "root" - mode "0644" +cron_d "piwik" do + minute "5" + user "www-data" + command "/usr/bin/php /srv/piwik.openstreetmap.org/console core:archive --quiet --url=https://piwik.openstreetmap.org/" end