]> git.openstreetmap.org Git - chef.git/blobdiff - cookbooks/db/recipes/master.rb
Make sure the planet user is created by recipes which use it
[chef.git] / cookbooks / db / recipes / master.rb
index 9b5a0ab5fafa63c671fff61e24a5311336f99cda..905d7a221ed8ed8f4d9fbc08bf1f649ded476cb5 100644 (file)
@@ -1,8 +1,8 @@
 #
-# Cookbook Name:: db
+# Cookbook:: db
 # Recipe:: master
 #
-# 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.
@@ -49,6 +49,7 @@ end
 postgresql_user "planetdiff" do
   cluster node[:db][:cluster]
   password passwords["planetdiff"]
+  replication true
 end
 
 postgresql_user "backup" do
@@ -83,9 +84,25 @@ postgresql_extension "btree_gist" do
   only_if { node[:postgresql][:clusters][node[:db][:cluster]] && node[:postgresql][:clusters][node[:db][:cluster]][:version] >= 9.0 }
 end
 
-template "/etc/cron.daily/rails-db" do
-  source "cron.erb"
+cookbook_file "/usr/local/share/monthly-reindex.sql" do
   owner "root"
   group "root"
-  mode 0o755
+  mode "644"
+end
+
+systemd_service "monthly-reindex" do
+  description "Monthly database reindex"
+  exec_start "/usr/bin/psql -f /usr/local/share/monthly-reindex.sql openstreetmap"
+  user "postgres"
+  sandbox true
+  restrict_address_families "AF_UNIX"
+end
+
+systemd_timer "monthly-reindex" do
+  description "Monthly database reindex"
+  on_calendar "Sun *-*-1..7 02:00"
+end
+
+service "monthly-reindex.timer" do
+  action [:enable, :start]
 end