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"
--- /dev/null
+# DO NOT EDIT - This file is being maintained by Chef
+
+<VirtualHost *:80>
+ 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/
+</VirtualHost>
+
+<VirtualHost *:443>
+ 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/
+</VirtualHost>
+
+<VirtualHost *:443>
+ 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
+</VirtualHost>
+
+<Directory /srv/<%= @year %>.stateofthemap.org/_site>
+ Require all granted
+</Directory>