X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/aebc9980eafb3e523e36023022186a5da64ca5ac..cb90c668918b4f95a83662dc08c584bc5f5b62e2:/cookbooks/nginx/recipes/default.rb diff --git a/cookbooks/nginx/recipes/default.rb b/cookbooks/nginx/recipes/default.rb index a5d06e1c0..853f8e5a7 100644 --- a/cookbooks/nginx/recipes/default.rb +++ b/cookbooks/nginx/recipes/default.rb @@ -1,14 +1,14 @@ # -# Cookbook Name:: nginx +# Cookbook:: nginx # Recipe:: default # -# Copyright 2013, OpenStreetMap Foundation +# Copyright:: 2013, OpenStreetMap Foundation # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -19,33 +19,57 @@ package "nginx" -# admins = data_bag_item("nginx", "admins") +resolvers = node[:networking][:nameservers].map do |resolver| + IPAddr.new(resolver).ipv6? ? "[#{resolver}]" : resolver +end template "/etc/nginx/nginx.conf" do source "nginx.conf.erb" owner "root" group "root" - mode 0644 + mode 0o644 + variables :resolvers => resolvers +end + +directory "/var/cache/nginx/fastcgi-cache" do + owner "www-data" + group "root" + mode 0o755 + only_if { node[:nginx][:cache][:fastcgi][:enable] } end -if node['nginx']['cache']['fastcgi']['enable'] - directory "/var/lib/nginx/fastcgi-cache" do - owner "nginx" - group "nginx" - mode 0755 - end +directory "/var/cache/nginx/proxy-cache" do + owner "www-data" + group "root" + mode 0o755 + only_if { node[:nginx][:cache][:proxy][:enable] } end -if node['nginx']['cache']['proxy']['enable'] - directory "/var/lib/nginx/proxy-cache" do - owner "nginx" - group "nginx" - mode 0755 - end +# Temporary Cleanup to remove old levels=1:2 cache after migration to 2:2:2 +execute "nginx-remove-old-fastcgi-cache" do + command "/usr/bin/find /var/cache/nginx/fastcgi-cache/ -mindepth 3 -maxdepth 3 -type f -delete" + ignore_failure true + only_if { node[:nginx][:cache][:fastcgi][:enable] } +end + +# Temporary Cleanup to remove old levels=1:2 cache after migration to 2:2:2 +execute "nginx-remove-old-proxy-cache" do + command "/usr/bin/find /var/cache/nginx/proxy-cache/ -mindepth 3 -maxdepth 3 -type f -delete" + ignore_failure true + only_if { node[:nginx][:cache][:proxy][:enable] } end service "nginx" do - action [:enable] + action [:enable] # Do not start the service as config may be broken from failed chef run supports :status => true, :restart => true, :reload => true subscribes :restart, "template[/etc/nginx/nginx.conf]" end + +munin_plugin_conf "nginx" do + template "munin.erb" +end + +package "libwww-perl" + +munin_plugin "nginx_request" +munin_plugin "nginx_status"