X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/7053c23557f11a84f98c5b3ee04c6815b2665879..8de21e204dc53bb28ad67207c308489f706ff00d:/cookbooks/blogs/recipes/default.rb diff --git a/cookbooks/blogs/recipes/default.rb b/cookbooks/blogs/recipes/default.rb index 365d84643..6b181f209 100644 --- a/cookbooks/blogs/recipes/default.rb +++ b/cookbooks/blogs/recipes/default.rb @@ -20,24 +20,20 @@ include_recipe "accounts" include_recipe "apache" include_recipe "git" +include_recipe "ruby" -package %w[ - ruby - ruby-dev +package %W[ make gcc g++ libsqlite3-dev + sqlite3 ] -gem_package "bundler" do - version "~> 1.17.2" -end - directory "/srv/blogs.openstreetmap.org" do owner "blogs" group "blogs" - mode 0o755 + mode "755" end git "/srv/blogs.openstreetmap.org" do @@ -46,22 +42,20 @@ git "/srv/blogs.openstreetmap.org" do depth 1 user "blogs" group "blogs" - notifies :run, "execute[/srv/blogs.openstreetmap.org/Gemfile]", :immediately + notifies :run, "bundle_install[/srv/blogs.openstreetmap.org]", :immediately end -execute "/srv/blogs.openstreetmap.org/Gemfile" do +bundle_install "/srv/blogs.openstreetmap.org" do action :nothing - command "bundle install --deployment" - cwd "/srv/blogs.openstreetmap.org" - user "blogs" - group "blogs" - notifies :run, "execute[/srv/blogs.openstreetmap.org]", :immediately + options "--deployment" + user "root" + group "root" + notifies :run, "bundle_exec[/srv/blogs.openstreetmap.org]", :immediately end -execute "/srv/blogs.openstreetmap.org" do +bundle_exec "/srv/blogs.openstreetmap.org" do action :nothing - command "bundle exec pluto build -t osm -o build" - cwd "/srv/blogs.openstreetmap.org" + command "pluto build -t osm -o build" user "blogs" group "blogs" end @@ -84,9 +78,27 @@ template "/usr/local/bin/blogs-update" do mode "0755" end -template "/etc/cron.d/blogs" do - source "cron.erb" +systemd_service "blogs-update" do + description "Update blog aggregator" + exec_start "/usr/local/bin/blogs-update" + user "blogs" + sandbox :enable_network => true + read_write_paths "/srv/blogs.openstreetmap.org" +end + +systemd_timer "blogs-update" do + description "Update blog aggregator" + on_boot_sec "15m" + on_unit_inactive_sec "30m" +end + +service "blogs-update.timer" do + action [:enable, :start] +end + +template "/etc/cron.daily/blogs-backup" do + source "backup.cron.erb" owner "root" group "root" - mode "0644" + mode "0755" end