X-Git-Url: https://git.openstreetmap.org./chef.git/blobdiff_plain/f1be9b31bb948deaf5b68e3a918fb4e24bb39895..a2ca2affdf33440b6b3873ea4e6a329004021500:/cookbooks/stateofthemap/recipes/default.rb diff --git a/cookbooks/stateofthemap/recipes/default.rb b/cookbooks/stateofthemap/recipes/default.rb index 290ddf2c7..05239f2e3 100644 --- a/cookbooks/stateofthemap/recipes/default.rb +++ b/cookbooks/stateofthemap/recipes/default.rb @@ -1,8 +1,8 @@ # -# Cookbook Name:: stateofthemap +# Cookbook:: stateofthemap # 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. @@ -23,8 +23,9 @@ passwords = data_bag_item("stateofthemap", "passwords") git "/srv/stateofthemap.org" do action :sync - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "chooser" + depth 1 user "root" group "root" end @@ -57,14 +58,14 @@ wordpress_site "2007.stateofthemap.org" do end wordpress_theme "2007.stateofthemap.org-refreshwp-11" do - name "refreshwp-11" + theme "refreshwp-11" site "2007.stateofthemap.org" - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "theme-2007" end wordpress_plugin "2007.stateofthemap.org-geopress" do - name "geopress" + plugin "geopress" site "2007.stateofthemap.org" end @@ -84,14 +85,14 @@ wordpress_site "2008.stateofthemap.org" do end wordpress_theme "2008.stateofthemap.org-refreshwp-11" do - name "refreshwp-11" + theme "refreshwp-11" site "2008.stateofthemap.org" - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "theme-2008" end wordpress_plugin "2008.stateofthemap.org-geopress" do - name "geopress" + plugin "geopress" site "2008.stateofthemap.org" end @@ -103,8 +104,9 @@ end git "/srv/2009.stateofthemap.org" do action :sync - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "resources-2009" + depth 1 user "wordpress" group "wordpress" end @@ -121,14 +123,14 @@ wordpress_site "2009.stateofthemap.org" do end wordpress_theme "2009.stateofthemap.org-aerodrome" do - name "aerodrome" + theme "aerodrome" site "2009.stateofthemap.org" - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "theme-2009" end wordpress_plugin "2009.stateofthemap.org-wp-sticky" do - name "wp-sticky" + plugin "wp-sticky" site "2009.stateofthemap.org" end @@ -140,8 +142,9 @@ end git "/srv/2010.stateofthemap.org" do action :sync - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "resources-2010" + depth 1 user "wordpress" group "wordpress" end @@ -156,20 +159,21 @@ wordpress_site "2010.stateofthemap.org" do end wordpress_theme "2010.stateofthemap.org-aerodrome" do - name "aerodrome" + theme "aerodrome" site "2010.stateofthemap.org" - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "theme-2010" end wordpress_plugin "2010.stateofthemap.org-sitepress-multilingual-cms" do - name "sitepress-multilingual-cms" + plugin "sitepress-multilingual-cms" site "2010.stateofthemap.org" - repository "git://chef.openstreetmap.org/sitepress-multilingual-cms.git" + repository "https://git.openstreetmap.org/private/sitepress-multilingual-cms.git" + not_if { ENV["TEST_KITCHEN"] } end wordpress_plugin "2010.stateofthemap.org-wp-sticky" do - name "wp-sticky" + plugin "wp-sticky" site "2010.stateofthemap.org" end @@ -181,8 +185,9 @@ end git "/srv/2011.stateofthemap.org" do action :sync - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "resources-2011" + depth 1 user "wordpress" group "wordpress" end @@ -197,20 +202,21 @@ wordpress_site "2011.stateofthemap.org" do end wordpress_theme "2011.stateofthemap.org-aerodrome" do - name "aerodrome" + theme "aerodrome" site "2011.stateofthemap.org" - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "theme-2011" end wordpress_plugin "2011.stateofthemap.org-sitepress-multilingual-cms" do - name "sitepress-multilingual-cms" + plugin "sitepress-multilingual-cms" site "2011.stateofthemap.org" - repository "git://chef.openstreetmap.org/sitepress-multilingual-cms.git" + repository "https://git.openstreetmap.org/private/sitepress-multilingual-cms.git" + not_if { ENV["TEST_KITCHEN"] } end wordpress_plugin "2011.stateofthemap.org-wp-sticky" do - name "wp-sticky" + plugin "wp-sticky" site "2011.stateofthemap.org" end @@ -222,8 +228,9 @@ end git "/srv/2012.stateofthemap.org" do action :sync - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "resources-2012" + depth 1 user "wordpress" group "wordpress" end @@ -238,39 +245,41 @@ wordpress_site "2012.stateofthemap.org" do end wordpress_theme "2012.stateofthemap.org-aerodrome" do - name "aerodrome" + theme "aerodrome" site "2012.stateofthemap.org" - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "theme-2012" end wordpress_plugin "2012.stateofthemap.org-leaflet-maps-marker" do - name "leaflet-maps-marker" + plugin "leaflet-maps-marker" site "2012.stateofthemap.org" end wordpress_plugin "2012.stateofthemap.org-sitepress-multilingual-cms" do - name "sitepress-multilingual-cms" + plugin "sitepress-multilingual-cms" site "2012.stateofthemap.org" - repository "git://chef.openstreetmap.org/sitepress-multilingual-cms.git" + repository "https://git.openstreetmap.org/private/sitepress-multilingual-cms.git" + not_if { ENV["TEST_KITCHEN"] } end wordpress_plugin "2012.stateofthemap.org-wp-sticky" do - name "wp-sticky" + plugin "wp-sticky" site "2012.stateofthemap.org" end %w[2013].each do |year| git "/srv/#{year}.stateofthemap.org" do action :sync - repository "git://git.openstreetmap.org/stateofthemap.git" + repository "https://git.openstreetmap.org/public/stateofthemap.git" revision "site-#{year}" + depth 1 user "root" group "root" end ssl_certificate "#{year}.stateofthemap.org" do - domains ["#{year}.stateofthemap.org", "#{year}.stateofthemap.com"] + domains ["#{year}.stateofthemap.org", "#{year}.stateofthemap.com", "#{year}.sotm.org"] notifies :reload, "service[apache2]" end @@ -281,13 +290,36 @@ end end end -%w[2016 2017 2018].each do |year| +package %w[ + gcc + g++ + make + ruby + ruby-dev + libssl-dev + zlib1g-dev + pkg-config +] + +apache_module "expires" +apache_module "rewrite" + +gem_package "bundler" do + version "1.17.3" +end + +gem_package "bundler" do + version "2.1.4" +end + +%w[2016 2017 2018 2019 2020].each do |year| git "/srv/#{year}.stateofthemap.org" do action :sync - repository "git://github.com/openstreetmap/stateofthemap-#{year}.git" + repository "https://github.com/openstreetmap/stateofthemap-#{year}.git" + depth 1 user "root" group "root" - notifies :run, "execute[/srv/#{year}.stateofthemap.org]" + notifies :run, "execute[/srv/#{year}.stateofthemap.org/Gemfile]" end directory "/srv/#{year}.stateofthemap.org/_site" do @@ -296,16 +328,34 @@ end group "nogroup" end + # Workaround https://github.com/jekyll/jekyll/issues/7804 + # by creating a .jekyll-cache folder + directory "/srv/#{year}.stateofthemap.org/.jekyll-cache" do + mode 0o755 + owner "nobody" + group "nogroup" + end + + execute "/srv/#{year}.stateofthemap.org/Gemfile" do + action :nothing + command "bundle install --deployment" + cwd "/srv/#{year}.stateofthemap.org" + user "root" + group "root" + notifies :run, "execute[/srv/#{year}.stateofthemap.org]" + only_if { ::File.exist?("/srv/#{year}.stateofthemap.org/Gemfile") } + end + execute "/srv/#{year}.stateofthemap.org" do action :nothing - command "jekyll build --trace" + command "bundle exec jekyll build --trace --baseurl=https://#{year}.stateofthemap.org" cwd "/srv/#{year}.stateofthemap.org" user "nobody" group "nogroup" end ssl_certificate "#{year}.stateofthemap.org" do - domains ["#{year}.stateofthemap.org", "#{year}.stateofthemap.com"] + domains ["#{year}.stateofthemap.org", "#{year}.stateofthemap.com", "#{year}.sotm.org"] notifies :reload, "service[apache2]" end