]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/gps-tile/recipes/default.rb
Try and ensure tile server use an integer number of listen buckets
[chef.git] / cookbooks / gps-tile / recipes / default.rb
index c0779f076f019ec4463fa657114c5a544066e21d..5fa394481259fd784b119904f6fdafa866458846 100644 (file)
@@ -1,14 +1,14 @@
 #
-# Cookbook Name:: gps-tile
+# Cookbook:: gps-tile
 # 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,
 # limitations under the License.
 #
 
+include_recipe "accounts"
 include_recipe "apache"
+include_recipe "git"
+include_recipe "memcached"
 
-package "make"
-package "build-essential"
-package "pkg-config"
-package "zlib1g-dev"
-package "libbz2-dev"
-package "libarchive-dev"
-package "libexpat1-dev"
-package "libpng-dev"
-package "pngquant"
-package "libcache-memcached-perl"
+package %w[
+  make
+  build-essential
+  pkg-config
+  zlib1g-dev
+  libbz2-dev
+  libarchive-dev
+  libexpat1-dev
+  libpng-dev
+  pngquant
+  libcache-memcached-perl
+]
 
 directory "/srv/gps-tile.openstreetmap.org" do
   owner "gpstile"
   group "gpstile"
-  mode 0755
+  mode "755"
 end
 
 git "/srv/gps-tile.openstreetmap.org/import" do
   action :sync
-  repository "git://github.com/ericfischer/gpx-import.git"
-  revision "master"
+  repository "https://github.com/e-n-f/gpx-import.git"
+  revision "live"
+  depth 1
   user "gpstile"
   group "gpstile"
 end
 
-execute "import-make" do
+execute "/srv/gps-tile.openstreetmap.org/import/src/Makefile" do
   action :nothing
-  command "make"
+  command "make DB=none LDFLAGS=-lm"
   cwd "/srv/gps-tile.openstreetmap.org/import/src"
   user "gpstile"
   group "gpstile"
@@ -55,13 +61,14 @@ end
 
 git "/srv/gps-tile.openstreetmap.org/datamaps" do
   action :sync
-  repository "git://github.com/ericfischer/datamaps.git"
-  revision "master"
+  repository "https://github.com/e-n-f/datamaps.git"
+  revision "live"
+  depth 1
   user "gpstile"
   group "gpstile"
 end
 
-execute "datamaps-make" do
+execute "/srv/gps-tile.openstreetmap.org/datamaps/Makefile" do
   action :nothing
   command "make"
   cwd "/srv/gps-tile.openstreetmap.org/datamaps"
@@ -72,14 +79,70 @@ end
 
 git "/srv/gps-tile.openstreetmap.org/updater" do
   action :sync
-  repository "git://github.com/ericfischer/gpx-updater.git"
-  revision "master"
+  repository "https://github.com/openstreetmap/gpx-updater.git"
+  revision "live"
+  depth 1
   user "gpstile"
   group "gpstile"
 end
 
-directory "/srv/gps-tile.openstreetmap.org/html" do
+directory "/srv/gps-tile.openstreetmap.org/tracks" do
+  owner "gpstile"
+  group "gpstile"
+  mode "755"
+end
+
+directory "/srv/gps-tile.openstreetmap.org/shapes" do
   owner "gpstile"
   group "gpstile"
-  mode 0755
+  mode "755"
+end
+
+systemd_service "gps-update" do
+  description "GPS tile update daemon"
+  after ["network.target", "memcached.service"]
+  wants ["memcached.service"]
+  user "gpstile"
+  working_directory "/srv/gps-tile.openstreetmap.org"
+  exec_start "/srv/gps-tile.openstreetmap.org/updater/update"
+  nice 10
+  sandbox :enable_network => true
+  read_write_paths "/srv/gps-tile.openstreetmap.org"
+  restart "on-failure"
+end
+
+service "gps-update" do
+  action [:enable, :start]
+  subscribes :restart, "git[/srv/gps-tile.openstreetmap.org/updater]"
+  subscribes :restart, "systemd_service[gps-update]"
+end
+
+remote_directory "/srv/gps-tile.openstreetmap.org/html" do
+  source "html"
+  owner "gpstile"
+  group "gpstile"
+  mode "755"
+  files_owner "gpstile"
+  files_group "gpstile"
+  files_mode "644"
+end
+
+apache_module "cgid"
+apache_module "headers"
+apache_module "rewrite"
+
+ssl_certificate "gps-tile.openstreetmap.org" do
+  domains ["gps-tile.openstreetmap.org",
+           "a.gps-tile.openstreetmap.org",
+           "b.gps-tile.openstreetmap.org",
+           "c.gps-tile.openstreetmap.org",
+           "gps.tile.openstreetmap.org",
+           "gps-a.tile.openstreetmap.org",
+           "gps-b.tile.openstreetmap.org",
+           "gps-c.tile.openstreetmap.org"]
+  notifies :reload, "service[apache2]"
+end
+
+apache_site "gps-tile.openstreetmap.org" do
+  template "apache.erb"
 end