X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/8aa57233f9034b901d7a652bd6276d0d7c3ea4f0..5af95bd6e511c5b9f9e737b69b944fc00b60d42b:/cookbooks/nominatim/recipes/base.rb?ds=sidebyside diff --git a/cookbooks/nominatim/recipes/base.rb b/cookbooks/nominatim/recipes/base.rb index 2e6a8c125..242ada30d 100644 --- a/cookbooks/nominatim/recipes/base.rb +++ b/cookbooks/nominatim/recipes/base.rb @@ -26,11 +26,13 @@ package "php5-pgsql" package "php5-fpm" package "php-pear" package "php-apc" +package "php-db" apache_module "rewrite" apache_module "proxy" apache_module "proxy_fcgi" apache_module "proxy_http" +apache_module "headers" home_directory = data_bag_item("accounts", "nominatim")["home"] source_directory = "#{home_directory}/nominatim" @@ -53,7 +55,7 @@ node[:nominatim][:fpm_pools].each do |name, data| source "fpm.conf.erb" owner "root" group "root" - mode 0644 + mode 0o644 variables data.merge(:name => name, :port => data[:port]) notifies :reload, "service[php5-fpm]" end @@ -64,23 +66,45 @@ postgresql_munin "nominatim" do database database_name end -directory "/var/log/nominatim" do +directory node[:nominatim][:logdir] do owner "nominatim" group "nominatim" - mode 0755 + mode 0o755 + recursive true +end + +file "#{node[:nominatim][:logdir]}/query.log" do + action :create_if_missing + owner "www-data" + group "adm" + mode 0o664 +end + +file "#{node[:nominatim][:logdir]}/update.log" do + action :create_if_missing + owner "nominatim" + group "adm" + mode 0o664 end directory "#{home_directory}/status" do owner "nominatim" group "postgres" - mode 0775 + mode 0o775 end template "/etc/logrotate.d/nominatim" do source "logrotate.nominatim.erb" owner "root" group "root" - mode 0644 + mode 0o644 +end + +template "/etc/logrotate.d/apache2" do + source "logrotate.apache.erb" + owner "root" + group "root" + mode 0o644 end package "osmosis" @@ -91,6 +115,7 @@ package "postgresql-#{database_version}-postgis-#{postgis_version}" package "postgresql-server-dev-#{database_version}" package "build-essential" package "libxml2-dev" +package "libexpat-dev" package "libgeos-dev" package "libgeos++-dev" package "libpq-dev" @@ -106,28 +131,17 @@ package "libboost-system-dev" package "libboost-filesystem-dev" package "libboost-thread-dev" -execute "php-pear-db" do - command "pear install DB" - not_if { File.exist?("/usr/share/php/DB") } -end - execute "compile_nominatim" do action :nothing command "cd #{source_directory} && ./autogen.sh && ./configure && make" user "nominatim" end -directory "#{source_directory}/log" do - owner "nominatim" - group "nominatim" - mode 0755 -end - template "#{source_directory}/.git/hooks/post-merge" do source "update_source.erb" owner "nominatim" group "nominatim" - mode 0755 + mode 0o755 variables :source_directory => source_directory end @@ -135,7 +149,7 @@ template "#{source_directory}/settings/local.php" do source "nominatim.erb" owner "nominatim" group "nominatim" - mode 0664 + mode 0o664 variables :postgres_version => database_version end @@ -144,28 +158,28 @@ template "#{source_directory}/settings/ip_blocks.conf" do source "ipblocks.erb" owner "nominatim" group "nominatim" - mode 0664 + mode 0o664 end file "#{source_directory}/settings/apache_blocks.conf" do action :create_if_missing owner "nominatim" group "nominatim" - mode 0664 + mode 0o664 end file "#{source_directory}/settings/ip_blocks.map" do action :create_if_missing owner "nominatim" group "nominatim" - mode 0664 + mode 0o664 end -if node[:nominatim][:enabled] - cron_action = :create -else - cron_action = :delete -end +cron_action = if node[:nominatim][:enabled] + :create + else + :delete + end template "/etc/cron.d/nominatim" do action cron_action @@ -180,19 +194,26 @@ template "#{source_directory}/utils/nominatim-update" do source "updater.erb" user "nominatim" group "nominatim" - mode 0755 + mode 0o755 + variables :bindir => source_directory, + :srcdir => source_directory, + :logfile => "#{node[:nominatim][:logdir]}/update.log", + :branch => node[:nominatim][:revision], + :update_stop_file => "#{home_directory}/status/updates_disabled" end template "/etc/init.d/nominatim-update" do source "updater.init.erb" user "nominatim" group "nominatim" - mode 0755 + mode 0o755 variables :source_directory => source_directory end munin_plugin_conf "nominatim" do template "munin.erb" + variables :db => node[:nominatim][:database][:dbname], + :querylog => "#{node[:nominatim][:logdir]}/query.log" end munin_plugin "nominatim_importlag" do @@ -223,7 +244,7 @@ external_data.each do |fname| source "http://www.nominatim.org/data/#{fname}" owner "nominatim" group "nominatim" - mode 0644 + mode 0o644 end end @@ -234,14 +255,15 @@ additional_scripts.each do |fname| source "#{fname}.erb" owner "root" group "root" - mode 0755 + mode 0o755 + variables :db => node[:nominatim][:database][:dbname] end end directory File.dirname(node[:nominatim][:flatnode_file]) do owner "nominatim" group "nominatim" - mode 0755 + mode 0o755 recursive true end