]> git.openstreetmap.org Git - chef.git/blob - cookbooks/imagery/recipes/default.rb
Merge remote-tracking branch 'github/pull/715'
[chef.git] / cookbooks / imagery / recipes / default.rb
1 #
2 # Cookbook:: imagery
3 # Recipe:: default
4 #
5 # Copyright:: 2016, 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 #     https://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 "accounts"
21 include_recipe "nginx"
22 include_recipe "git"
23
24 # Imagery gdal and proj requirements
25 package %w[
26   gdal-bin
27   python3-gdal
28   proj-bin
29 ]
30
31 # Imagery MapServer + Mapcache requirements
32 package %w[
33   cgi-mapserver
34   mapcache-cgi
35   mapcache-tools
36 ]
37
38 # Mapserver via nginx requires as fastcgi spawner
39 package %w[
40   spawn-fcgi
41   multiwatch
42 ]
43
44 # Imagery processing Requirements
45 package "imagemagick"
46
47 # Imagery misc compression
48 package %w[
49   xz-utils
50   unzip
51 ]
52
53 template "/etc/mapserver.conf" do
54   source "mapserver.conf.erb"
55   owner "root"
56   group "root"
57   mode "644"
58 end
59
60 directory "/srv/imagery/mapserver" do
61   owner "root"
62   group "root"
63   mode "755"
64   recursive true
65 end
66
67 directory "/srv/imagery/common" do
68   owner "root"
69   group "root"
70   mode "755"
71   recursive true
72 end
73
74 directory "/srv/imagery/sockets" do
75   owner "root"
76   group "root"
77   mode "777"
78   recursive true
79 end
80
81 # Pre-download uk_os_OSTN15_NTv2_OSGBtoETRS.tif used for EPSG:27700 conversions
82 execute "uk_os_OSTN15_NTv2_OSGBtoETRS.tif" do
83   command "projsync --file uk_os_OSTN15_NTv2_OSGBtoETRS.tif --system-directory"
84   not_if { ::File.exist?("/usr/share/proj/uk_os_OSTN15_NTv2_OSGBtoETRS.tif") }
85 end
86
87 # nginx_site "default" do
88 #   template "nginx_default.conf.erb"
89 #   directory "/srv/imagery/default"
90 # end
91
92 systemd_tmpfile "/run/mapserver-fastcgi" do
93   type "d"
94   owner "imagery"
95   group "imagery"
96   mode "0755"
97   not_if { kitchen? }
98 end