X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/18e12b0e123fc3e5f344682f884feabc12da0f5a..e93ea7c47fe2f91e54edde1d37db37d26a27d34e:/cookbooks/web/recipes/frontend.rb diff --git a/cookbooks/web/recipes/frontend.rb b/cookbooks/web/recipes/frontend.rb index 7ec03754a..f27b029c9 100644 --- a/cookbooks/web/recipes/frontend.rb +++ b/cookbooks/web/recipes/frontend.rb @@ -1,8 +1,8 @@ # -# Cookbook Name:: web +# Cookbook:: web # Recipe:: frontend # -# Copyright 2011, OpenStreetMap Foundation +# Copyright:: 2011, OpenStreetMap Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -17,18 +17,23 @@ # limitations under the License. # +node.default[:memcached][:ip_address] = node.internal_ipaddress || "127.0.0.1" + +include_recipe "memcached" include_recipe "apache" include_recipe "web::rails" +include_recipe "web::cgimap" web_passwords = data_bag_item("web", "passwords") apache_module "alias" apache_module "expires" apache_module "headers" -apache_module "proxy_http" -apache_module "proxy_balancer" +apache_module "proxy" +apache_module "proxy_fcgi" apache_module "lbmethod_byrequests" apache_module "lbmethod_bybusyness" +apache_module "reqtimeout" apache_module "rewrite" apache_module "unique_id" @@ -36,14 +41,68 @@ apache_site "default" do action [:disable] end +remote_directory "#{node[:web][:base_directory]}/static" do + source "static" + owner "root" + group "root" + mode "755" + files_owner "root" + files_group "root" + files_mode "644" +end + apache_site "www.openstreetmap.org" do template "apache.frontend.erb" - variables :secret_key_base => web_passwords["secret_key_base"] + variables :status => node[:web][:status], + :secret_key_base => web_passwords["secret_key_base"] end template "/etc/logrotate.d/apache2" do source "logrotate.apache.erb" owner "root" group "root" - mode 0o644 + mode "644" +end + +if %w[database_offline database_readonly].include?(node[:web][:status]) + service "rails-jobs@mailers" do + action :stop + end + + service "rails-jobs@storage" do + action :stop + end + + service "rails-jobs@traces" do + action :stop + end +else + service "rails-jobs@mailers" do + action [:enable, :start] + supports :restart => true + subscribes :restart, "rails_port[www.openstreetmap.org]" + subscribes :restart, "systemd_service[rails-jobs@]" + end + + service "rails-jobs@storage" do + action [:enable, :start] + supports :restart => true + subscribes :restart, "rails_port[www.openstreetmap.org]" + subscribes :restart, "systemd_service[rails-jobs@]" + end + + service "rails-jobs@traces" do + action [:enable, :start] + supports :restart => true + subscribes :restart, "rails_port[www.openstreetmap.org]" + subscribes :restart, "systemd_service[rails-jobs@]" + end +end + +template "/usr/local/bin/deliver-message" do + source "deliver-message.erb" + owner "rails" + group "rails" + mode "0700" + variables :secret_key_base => web_passwords["secret_key_base"] end