This is the tracking task for the migration of mailman from sodium onto a production ganeti vm & current/stable release of mailman2.x.
The following people are involved in this project: @Dzahn, @JohnLewis, @RobH & @faidon.
# | task | ticket | done? |
1 | request new VM for staging/testing | T108065 | yes |
2 | install jessie on new VM | T108070 | yes |
3 | let JohnLewis sign L2 | T108057 | yes |
3 | give JohnLewis shell access on new VM and sudo to execute things as "list" and view log files | T108082 | yes |
4 | basic semi-manual mailman 2.1.8 setup on new VM | T108383 | yes |
5 | setup rsyncd on fermium (via puppet) to be able to copy files directly without agent forwarding | T109921 | yes |
6 | export list configs and archives from sodium, rsync them all over to fermium | T108071 | yes |
7 | write script to import lists | T109922 | yes |
8 | test importing of list configs and archives on fermium for all lists (public and private) | T108073 | yes |
9 | rename lists with invalid names | T109539, T109393 | yes |
10 | move hardcoded IP configuration (server and service name) to hiera to be able to run more than 1 mailman instance from puppet role | T109624 | yes |
11 | clean up mailman data directory on sodium (over 0.5 million held messages) | T109838, T83967 | yes |
12 | write this plan :) | T109467 | yes |
13 | go through all directories in /var/lib/mailman and decide whether they need to be imported or can be skipped | T109399 | yes |
14 | figure out which new service IP to use, v4 and v6, set it in hiera? | T108080 | yes |
15 | add public IP for fermium (DNS change, installserver/DHCP change) | T109923 | yes |
16 | reinstall OS (jessie) on fermium | T109924 | yes |
17 | apply regular mailman role on fermium | T109925 | yes |
18 | test ferm rules are sufficient | T104980 | yes |
19 | rsync all configs and archives one more time | T110129 | yes |
20 | import all lists with the script we wrote for that | T110131 | no |
21 | one day before: lower lists.wikimedia.org TTL to 5 min | T110132 | yes |
22 | announce scheduled downtime - need to debate and decide on a worst-case length. | T110133 | yes |
23 | right before the switch: lower TTL to 10 seconds | T110135 | n/a |
24 | hold lists.wikimedia.org with exim (disable puppet on sodium; apply locally rather via operations/puppet unless we want to hold all emails to fermium as well for 'safety'?) | T110136 | invalid |
25 | shut down mailman on sodium | T110137 | yes |
26 | rsync one more time, this time only the diff since it was shutdown | T110138 | yes |
27 | rsync exim spool directory | T110440 | yes |
28 | run ./bin/update and ./bin/check_perms | T113020 | yes |
29 | test sending individual mails from fermium | T110441 | yes |
30 | switch over service IP | T110139 | yes |
31 | re-enable exim on fermium | T113045 | yes |
31 | send follow-up email, announce changes with new mailman version if any that have user impact ? | T110140 | yes |
32 | profit? maybe - revert ideas for worst cases? | yes | |
Not blockers, just follow-up: