]> git.openstreetmap.org Git - chef.git/blob - cookbooks/planet/recipes/default.rb
044a88bf8d4b6919a0fb55c0b4c847173315f307
[chef.git] / cookbooks / planet / recipes / default.rb
1 #
2 # Cookbook Name:: planet
3 # Recipe:: default
4 #
5 # Copyright 2011, OpenStreetMap Foundation
6 #
7 # Licensed under the Apache License, Version 2.0 (the "License");
8 # you may not use this file except in compliance with the License.
9 # You may obtain a copy of the License at
10 #
11 #     http://www.apache.org/licenses/LICENSE-2.0
12 #
13 # Unless required by applicable law or agreed to in writing, software
14 # distributed under the License is distributed on an "AS IS" BASIS,
15 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 # See the License for the specific language governing permissions and
17 # limitations under the License.
18 #
19
20 include_recipe "apache::ssl"
21
22 package "perl"
23 package "pbzip2"
24 package "osmosis"
25
26 if node[:lsb][:release].to_f >= 16.04
27   package "php-cli"
28 else
29   package "php5-cli"
30 end
31
32 file "/etc/cron.d/planet" do
33   action :delete
34 end
35
36 remote_directory "/store/planet#html" do
37   path "/store/planet"
38   source "html"
39   owner "root"
40   group "root"
41   mode "0755"
42   files_owner "root"
43   files_group "root"
44   files_mode 0o644
45 end
46
47 remote_directory "/store/planet#cgi" do
48   path "/store/planet"
49   source "cgi"
50   owner "root"
51   group "root"
52   mode 0o755
53   files_owner "root"
54   files_group "root"
55   files_mode 0o755
56 end
57
58 remote_directory node[:planet][:dump][:xml_history_directory] do
59   source "history_cgi"
60   owner "www-data"
61   group "planet"
62   mode 0o775
63   files_owner "root"
64   files_group "root"
65   files_mode 0o755
66 end
67
68 [:xml_directory, :xml_history_directory,
69  :pbf_directory, :pbf_history_directory].each do |dir|
70   directory node[:planet][:dump][dir] do
71     owner "www-data"
72     group "planet"
73     mode 0o775
74   end
75 end
76
77 directory "/store/planet/notes" do
78   owner "www-data"
79   group "planet"
80   mode 0o775
81 end
82
83 template "/usr/local/bin/apache-latest-planet-filename" do
84   source "apache-latest-planet-filename.erb"
85   owner "root"
86   group "root"
87   mode 0o755
88 end
89
90 apache_module "cgid"
91 apache_module "rewrite"
92 apache_module "proxy_http"
93
94 ssl_certificate "planet.openstreetmap.org" do
95   domains ["planet.openstreetmap.org", "planet.osm.org"]
96   fallback_certificate "openstreetmap"
97   notifies :reload, "service[apache2]"
98 end
99
100 apache_site "planet.openstreetmap.org" do
101   template "apache.erb"
102 end
103
104 template "/etc/logrotate.d/apache2" do
105   source "logrotate.apache.erb"
106   owner "root"
107   group "root"
108   mode 0o644
109 end
110
111 munin_plugin "planet_age"