This is an automated email from the ASF dual-hosted git repository.
sebb pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/whimsy.git
The following commit(s) were added to refs/heads/master by this push:
new a5594aee Cutover docs
a5594aee is described below
commit a5594aee108ff55c11dda07c9cddc16cc49af880
Author: Sebb <[email protected]>
AuthorDate: Fri Sep 27 23:48:15 2024 +0100
Cutover docs
---
CUTOVER.md | 42 ++++++++++++++++++++++++++++++++++++++++++
MAIL.md | 13 +++++++++++++
2 files changed, 55 insertions(+)
diff --git a/CUTOVER.md b/CUTOVER.md
new file mode 100644
index 00000000..5c63a06e
--- /dev/null
+++ b/CUTOVER.md
@@ -0,0 +1,42 @@
+Notes on cutover
+================
+
+Some notes on performing a cutover, e.g. for upgrading a host system.
+
+Pre-requisites
+==============
+The target system must be up and running. Check the following:
+- /srv/whimsy/www/maintenance.txt is present (this stops most access)
+- all cronjobs are running OK
+- system is receiving mail, and can send emails
+- the name whimsy.apache.org is included in the website certificate
+- can access the host using https:
+- during cutover, update access has to be disabled for the agenda and
secretary workbench,
+so try to select a cutover date that is a less busy time (ask board@)
+- a suitable time has been arranged with Infra for the DNS update.
+- /srv/whimsy/notice.txt has been created to give notice of the changeover time
+- an initial rsync of local data has been performed (this will save time later)
+
+Suggested process
+=================
+- double-check that Infra will be available at around the desired time
+- About 1 hour before changeover, send an email to board@ and secretary@
confirming the changeover time.
+- About 20 mins before, touch /srv/whimsy/migrating.txt. This will disable
writes by users of agenda and workbench. It should be reflected in the
workbench header (not yet done for agenda)
+- refresh the local data copy on the target system. This should pick up very
few new files (mainly the secretary mail YAML files), as incoming emails should
be being stored by both systems.
+If there are unexpected discrepancies, the cause must be determined before
cutover.
+- Remove /srv/whimsy/www/maintenance.txt on the target system. The workbench
should accessible on the target host, and should show a message that it is not
the active node for changes.
+- The system is now ready for changeover
+- Contact Infra to get DNS changed over. This should only take a few minutes.
+- Once DNS has been updated (can check with ping),
+- Touch /srv/whimsy/www/maintenance.txt on the source system to prevent
further updates
+
+
+Old system tidyup
+=================
+- disable cronjobs. Remove the cronjob class reference from the old Puppet
node definition. Once the change has been applied, use root to delete the
crontabs:
+ - sudo crontab -u www-data -r
+ - sudo crontab -u whimsysvn -r
+- update listmodsubs.sh and whimsy_qmail_ids.sh in Puppet to stop pushing mail
data to the old host
+- login to the mail gateway and remove the old host subscriptions using
~apmail/bin/whimsy_subscribe.sh. Note that the script generates commands that
should be reviewed and then applied.
+
+When the old system is finally decommissioned, remove the Puppet definitions
diff --git a/MAIL.md b/MAIL.md
new file mode 100644
index 00000000..90bea95a
--- /dev/null
+++ b/MAIL.md
@@ -0,0 +1,13 @@
+Notes on mail delivery
+======================
+
+Whimsy is subscribed to the members and board mailing lists, and is added to
the secretary alias.
+
+These emails are routed to the www-data mailbox by an aliases(5) file.
+
+The www-data login has a procmailrc(5) file which checks the mail headers to
route the mails to
+one of the following:
+- tools/deliver.rb: handles board and members mails (based on List-Id by
default)
+- www/secretary/workbench/deliver.rb: handles secretary mails
+
+If the mail is not recognised, the default delivery is to the www-data mailbox