This is just a tracking task with blocking subtasks to track all the work that needs to happen before we can deploy to production
Here is the current deployment timeline:
- Oct 29 - Nov 4: Parsoid/PHP deployed to the Parsoid cluster to process all changeprop traffic (mirrored from Parsoid/JS) from 10% to 100%.
- Nov 19: Parsoid/PHP deployed to testwiki and test2wki (VE, Content Translation use Parsoid/PHP).
- Nov 21: Parsoid/PHP deployed to mediawiki.org (VE uses Parsoid/PHP).
- Nov25: Parsoid/PHP to be deployed to all private wikis (VE, Flow, Content Translation use Parsoid/PHP). An attempt on Nov 21 was rolled back because of T238849.
- Nov 26: Enable Parsoid/PHP use for Flow on mediawiki.org
- Nov 26: Parsoid/PHP to be deployed to group 0 and group 1 wikis (VE, Content Translation , Media Content Service use Parsoid/PHP). We have effectively deployed to all group 0 wikis since all the other closed wikis will have no impact from the switchover.
- Dec 2: Flow on all group 0 and 1 wikis use Parsoid/PHP
Deployments have been really smooth so far, so, we'll probably finish group 2 wiki deployment on Dec 2 in multiple steps within a few hours:
- Step 1: Enable Parsoid/PHP on zh, ru, sr wikis. This lets us exercise language variant code. We need MCS / Android product folks ready to test and verify. Based on crashers in production for language variant requests, we reverted the switchover on zh, sr wikis.
- Step 2: Direct all language variant requests to Parsoid/JS always. This will let us fix the crashers and performance on it separately. Re-enable Parsoid/PHP on sr and zh wikis.
- Step 3: Enable Parsoid/PHP on everything else but enwiki. Maybe wait for about an hour or less.
- Step 4: Enable Parsoid/PHP on enwiki.
- Step 5: Enable Flow everywhere (group 0 and group 1 previously)
Later in the week:
- Direct language variant requests to Parsoid/PHP
At this point, Parsoid/PHP is enabled for all products except Linter.
- Later in the week, enabling linter posts from Parsoid/PHP (which will temporarily introduce duplicate lint posts -- verify we do the right thing) and disable linting from Parsoid/JS
At this point, Parsoid/JS will be operational in mirror / shadow mode for the really unlikely possibility of need to switch back to Parsoid/JS for some product somewhere.
- First thing in 2020: decommission Parsoid/JS (will require a separate phab task).