Upgrade Weblate to latest 4.x
In advance:
- 
Migrate the Translation Platform to use a containerized Weblate: #17870 (closed)  - 
Check and eventually adapt our custom scripts to latest Weblate API  - 
Check whether there are any changes in relation to the current translation workflow  - 
Get puppet-tails!77 (merged) to a working merge-able state  - 
Check whether unicode-related errors occur in the upgraded Weblate.(can't reproduce myself, thus will rely on Reviewers testing) - 
Check whether permissions enforcing works fine  - 
Coordinate testing of the upgraded platform  - 
Setup upgrade tooling in production VM  - 
Schedule downtime (current plan: Feb 15, 2022) and warn in advance  
On the scheduled day:
- 
Shutdown the service: disable Puppet Agent and stop Apache and Weblate  - 
Disable cron jobs.  - 
Save a backup of Weblate  - 
Merge Weblate upgrade: puppet-tails!77 (merged)  - 
Pull all intermediate container images needed for the upgrade.  - 
Change the database owner to weblate. - 
Run Puppet Agent until it succeeds (2-3 times) and then shutdown the service again  - 
For each new version ( 4.0, ...,4.9), do the upgrade dance:make upgrade VERSION=4.X(1h) - 
Change the database owner back to postgres. - 
Enable and run Puppet Agent  - 
Remove unnecessary container images.  - 
Make sure the website and all glue code works fine  - 
Report about permission changes in tails-weblate@. - 
File issue to discuss and plan further upgrades (4.10 is already out) -- #17890 (closed)  
Edited  by Zen Fu