Flow/2013-12 Deployment

We have the Tuesday 2013-12-10 1pm (13:00-15:00 PDT) deployment window for our deployment to enable Flow on a few pages on mediawiki.org


 * gerrit config patch is
 * tracking bug

The pages

 * mediawiki.org
 * Talk:Flow QA, Talk:Sandbox, Talk:Flow


 * testwiki
 * testwiki:Talk:Flow QA, testwiki:Talk:Sandbox


 * test2
 * test2wiki:Talk:Flow QA, test2wiki:Talk:Sandbox

There's no content to archive:
 * Talk:Flow QA doesn't exist
 * Talk:Sandbox is a redirect to Project:Sandbox and nothing links to it.
 * Talk:Flow is a redirect to Talk:Flow Portal and only has two links.

Checklist

 * ❌ Reedy +1 on
 * Chris Steipp security review, met Monday 2013-12-01 9:30 PST
 * ✅ ops (Faidon) OK
 * ✅ We won't have dedicated memcache servers for this
 * this plan

Pre-deploy

 * ✅ Edit the pages to say "Flow team will enable Flow on this page on 2013-12-04. After that, if you can see this then we reverted or something has gone wrong." For bonus points, make Flow-enabled.
 * ✅ a DBA needs to create 'flowdb' on the extension1 cluster. RT ticket 6486 filed.

Deploy steps
The wikis involved are running 1.23wmf6. It's How to deploy code, with some database changes.

L10n messages

 * ✅ push out extension code
 * add the submodule and +2 the submodule change per How to deploy code
 * +2 which adds Flow to wmf-config/extension-list
 * Follow Configuration files, run mergeMessageFileList.php by hand to check for errors.
 * run scap to push Flow code and rebuild l10n cache
 * en-beta Flow QA page still works!

Database tables and records

 * Create Flow tables and workflow definitions in 'flowdb' on extension1 cluster.
 * Follow greg-g's e-mail to run these commands on host terbium, not tin:
 * Backport --wikidb parameter to maintenance/sql.php to wmf6 and sync-file it.
 * On terbium run mwscript sql.php --wikidb=flowdb --cluster=extension1 --wiki=test2wiki extensions/Flow/flow.sql to create the tables on flowdb on extension1.


 * Fetch config change with wgFlowDefaultDb and wgFlowCluster settings (Flow still not enabled).
 * Run mwscript --wiki=test2wiki maintenance/FlowInsertDefaultDefinitions.php to add the default workflow definitions
 * If we can't create the tables and default definitions then a DBA has to run the raw commands. RT ticket 6486

Enable Flow

 * push out config changes that switch it on
 * +2
 * sync-file the config files
 * any particular order?
 * monitor for errors
 * xx
 * run QA tests on test2.mediawiki.org
 * probably have to fix beta cluster for Flow on separate flowdb (see Matthias comment) – we left beta cluster not using separate flowdb on separate cluster with separate ExternalStore.

Testing

 * Visit the URLs.
 * Point browsertests at test2wiki.