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:
|33|TTL back up to normal 1H |T110141|no
|34|shutdown sodium, celebrate "no more lucid", close all resolved tickets |T110142|