From: Grant Slater Date: Sun, 15 Sep 2024 03:14:09 +0000 (+0100) Subject: Switch birthday20 to a static container X-Git-Url: https://git.openstreetmap.org./chef.git/commitdiff_plain/b79b8175ffe747fa42251d2a5679f90d889337dc Switch birthday20 to a static container --- diff --git a/.github/workflows/test-kitchen.yml b/.github/workflows/test-kitchen.yml index 7e738b38b..c079240cc 100644 --- a/.github/workflows/test-kitchen.yml +++ b/.github/workflows/test-kitchen.yml @@ -43,6 +43,7 @@ jobs: - elasticsearch - exim - fail2ban + - foundation-birthday - foundation-board - foundation-dwg - foundation-mastodon diff --git a/.kitchen.yml b/.kitchen.yml index 805d15b74..0af8c80de 100644 --- a/.kitchen.yml +++ b/.kitchen.yml @@ -163,6 +163,9 @@ suites: - name: fail2ban run_list: - recipe[fail2ban::default] + - name: foundation-birthday + run_list: + - recipe[foundation::birthday] - name: foundation-board run_list: - recipe[foundation::board] diff --git a/cookbooks/blog/recipes/birthday.rb b/cookbooks/blog/recipes/birthday.rb deleted file mode 100644 index f581c86de..000000000 --- a/cookbooks/blog/recipes/birthday.rb +++ /dev/null @@ -1,64 +0,0 @@ -# -# Cookbook:: blog -# Recipe:: birthday -# -# Copyright:: 2024, OpenStreetMap Foundation -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -include_recipe "wordpress" - -passwords = data_bag_item("birthday20", "passwords") -# wp2fa_encrypt_keys = data_bag_item("birthday20", "wp2fa_encrypt_keys") - -directory "/srv/birthday20.openstreetmap.org" do - owner "wordpress" - group "wordpress" - mode "755" -end - -# wordpress_site "birthday20.openstreetmap.org" do -# aliases ["birthday20.osm.org", "birthday20.openstreetmap.com", -# "birthday20.openstreetmap.net", "birthday20.openstreetmaps.org"] -# directory "/srv/birthday20.openstreetmap.org/wp" -# database_name "osm-birthday20" -# database_user "osm-birthday20-user" -# database_password passwords["osm-birthday20-user"] -# wp2fa_encrypt_key wp2fa_encrypt_keys["key"] -# fpm_prometheus_port 11403 -# end - -# wordpress_plugin "birthday20.openstreetmap.org-shareadraft" do -# action :delete -# plugin "shareadraft" -# site "birthday20.openstreetmap.org" -# end - -# wordpress_plugin "birthday20.openstreetmap.org-public-post-preview" do -# plugin "public-post-preview" -# site "birthday20.openstreetmap.org" -# end - -template "/etc/cron.daily/birthday20-backup" do - source "backup-birthday20.cron.erb" - owner "root" - group "root" - mode "750" - variables :passwords => passwords -end - -ssl_certificate "birthday20.openstreetmap.org" do - domains ["birthday20.openstreetmap.org", "birthday20.osm.org", "birthday20.openstreetmap.com", - "birthday20.openstreetmap.net", "birthday20.openstreetmaps.org"] -end diff --git a/cookbooks/blog/templates/default/backup-birthday20.cron.erb b/cookbooks/blog/templates/default/backup-birthday20.cron.erb deleted file mode 100644 index fbc633ff6..000000000 --- a/cookbooks/blog/templates/default/backup-birthday20.cron.erb +++ /dev/null @@ -1,21 +0,0 @@ -#!/bin/sh - -# DO NOT EDIT - This file is being maintained by Chef - -T=$(mktemp -d -t -p /var/tmp osm-birthday20.XXXXXXXXXX) -D=$(date +%Y-%m-%d) -B=osm-birthday20-$D.tar.gz - -mkdir $T/osm-birthday20-$D -echo '[mysqldump]' > $T/mysqldump.opts -echo 'user=osm-birthday20-user' >> $T/mysqldump.opts -echo 'password=<%= @passwords["osm-birthday20-user"] %>' >> $T/mysqldump.opts -mysqldump --defaults-file=$T/mysqldump.opts --opt --no-tablespaces osm-birthday20 > $T/osm-birthday20-$D/osm-birthday20.sql -ln -s /srv/birthday20.openstreetmap.org $T/osm-birthday20-$D/www - -export RSYNC_RSH="ssh -ax" - -nice tar --create --dereference --directory=$T --warning=no-file-changed osm-birthday20-$D | nice gzip --rsyncable -9 > $T/$B -nice rsync --preallocate --fuzzy $T/$B backup.openstreetmap.org::backup - -rm -rf $T diff --git a/cookbooks/foundation/recipes/birthday.rb b/cookbooks/foundation/recipes/birthday.rb new file mode 100644 index 000000000..3f7077570 --- /dev/null +++ b/cookbooks/foundation/recipes/birthday.rb @@ -0,0 +1,26 @@ +# +# Cookbook:: foundation +# Recipe:: birthday +# +# Copyright:: 2024, OpenStreetMap Foundation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +include_recipe "podman::apache" + +podman_site "birthday20.openstreetmap.org" do + image "ghcr.io/openstreetmap/birthday20-website:latest" + aliases ["birthday20.osm.org", "birthday20.openstreetmap.com", + "birthday20.openstreetmap.net", "birthday20.openstreetmaps.org"] +end diff --git a/roles/birthday20.rb b/roles/birthday20.rb deleted file mode 100644 index a1b9191c2..000000000 --- a/roles/birthday20.rb +++ /dev/null @@ -1,18 +0,0 @@ -name "birthday20" -description "Role applied to birthday20 servers" - -default_attributes( - :accounts => { - :users => { - :mikel => { :status => :administrator }, - :wordpress => { - :status => :role, - :members => [:mikel] - } - }, - } -) - -run_list( - "recipe[blog::birthday]" -) diff --git a/roles/fume.rb b/roles/fume.rb index 6af2333b4..5b4c5a670 100644 --- a/roles/fume.rb +++ b/roles/fume.rb @@ -33,6 +33,5 @@ default_attributes( run_list( "role[equinix-dub]", - "role[blog-staging]", - "role[birthday20]" + "role[blog-staging]" ) diff --git a/roles/naga.rb b/roles/naga.rb index 4026bcac7..da7d39cd8 100644 --- a/roles/naga.rb +++ b/roles/naga.rb @@ -39,6 +39,7 @@ run_list( "role[irc]", "role[blogs]", "role[switch2osm]", + "recipe[foundation::birthday]", "recipe[foundation::mastodon]", "recipe[foundation::owg]", "recipe[foundation::welcome]",