From 44fabe91a8196d6f2a406c3d4ef0a99cec325d64 Mon Sep 17 00:00:00 2001 From: Tom Hughes Date: Mon, 13 Nov 2017 21:33:26 +0000 Subject: [PATCH] Deploy jekyll based stateofthemap sites on ridley --- cookbooks/stateofthemap/recipes/default.rb | 35 +++++++++++++++ .../templates/default/apache.jekyll.erb | 45 +++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 cookbooks/stateofthemap/templates/default/apache.jekyll.erb diff --git a/cookbooks/stateofthemap/recipes/default.rb b/cookbooks/stateofthemap/recipes/default.rb index b05dd8d19..f0936381f 100644 --- a/cookbooks/stateofthemap/recipes/default.rb +++ b/cookbooks/stateofthemap/recipes/default.rb @@ -266,6 +266,41 @@ wordpress_plugin "2012.stateofthemap.org-wp-sticky" do site "2012.stateofthemap.org" end +%w[2016 2017 2018].each do |year| + git "/srv/#{year}.stateofthemap.org" do + action :sync + repository "git://github.com/openstreetmap/stateofthemap-#{year}.git" + user "root" + group "root" + notifies :run, "execute[/srv/#{year}.stateofthemap.org]" + end + + directory "/srv/#{year}.stateofthemap.org/_site" do + mode 0o755 + owner "nobody" + group "nogroup" + end + + execute "/srv/#{year}.stateofthemap.org" do + action :nothing + command "jekyll build --trace" + cwd "/srv/#{year}.stateofthemap.org" + user "nobody" + group "nogroup" + end + + ssl_certificate "#{year}.stateofthemap.org" do + domains ["#{year}.stateofthemap.org", "#{year}.stateofthemap.com"] + notifies :reload, "service[apache2]" + end + + apache_site "#{year}.stateofthemap.org" do + template "apache.jekyll.erb" + directory "/srv/#{year}.stateofthemap.org/_site" + variables :year => year + end +end + template "/etc/cron.daily/sotm-backup" do source "backup.cron.erb" owner "root" diff --git a/cookbooks/stateofthemap/templates/default/apache.jekyll.erb b/cookbooks/stateofthemap/templates/default/apache.jekyll.erb new file mode 100644 index 000000000..4010ce4bb --- /dev/null +++ b/cookbooks/stateofthemap/templates/default/apache.jekyll.erb @@ -0,0 +1,45 @@ +# DO NOT EDIT - This file is being maintained by Chef + + + ServerName <%= @year %>.stateofthemap.org + ServerAlias <%= @year %>.stateofthemap.com + ServerAdmin webmaster@openstreetmap.org + + CustomLog /var/log/apache2/<%= @year %>.stateofthemap.org-access.log combined + ErrorLog /var/log/apache2/<%= @year %>.stateofthemap.org-error.log + + RedirectPermanent /.well-known/acme-challenge/ http://acme.openstreetmap.org/.well-known/acme-challenge/ + RedirectPermanent / https://<%= @year %>.stateofthemap.org/ + + + + ServerName <%= @year %>.stateofthemap.com + ServerAdmin webmaster@openstreetmap.org + + CustomLog /var/log/apache2/<%= @year %>.stateofthemap.org-access.log combined + ErrorLog /var/log/apache2/<%= @year %>.stateofthemap.org-error.log + + SSLEngine on + SSLCertificateFile /etc/ssl/certs/<%= @year %>.stateofthemap.org.pem + SSLCertificateKeyFile /etc/ssl/private/<%= @year %>.stateofthemap.org.key + + RedirectPermanent / https://<%= @year %>.stateofthemap.org/ + + + + ServerName <%= @year %>.stateofthemap.org + ServerAdmin webmaster@openstreetmap.org + + CustomLog /var/log/apache2/<%= @year %>.stateofthemap.org-access.log combined + ErrorLog /var/log/apache2/<%= @year %>.stateofthemap.org-error.log + + SSLEngine on + SSLCertificateFile /etc/ssl/certs/<%= @year %>.stateofthemap.org.pem + SSLCertificateKeyFile /etc/ssl/private/<%= @year %>.stateofthemap.org.key + + DocumentRoot /srv/<%= @year %>.stateofthemap.org/_site + + +.stateofthemap.org/_site> + Require all granted + -- 2.43.2