Content translation/Deployments/How-to

ContentTranslation
Content Translation is updated via regular MediaWiki train updates. In case of manual update needed, follow the steps below.
 * 1) Update desired branches to desired commit/update using delete and create branches at Gerrit interface, https://gerrit.wikimedia.org/r/#/admin/projects/mediawiki/extensions/ContentTranslation,branches In case of emergency, note down old hash.
 * 2) Read and follow: https://wikitech.wikimedia.org/wiki/How_to_deploy_code#Updating_the_submodule Make sure you've clean copy of MediaWiki/core for this.
 * 3) You're ready for actual deployment.

config

 * 1) Submit patch for cxserver configuration for Production and Beta Cluster. Usually, we need to change
 * 2) Beta is using config.default.yaml (symlinked to config.yaml) from cxserver/deploy repository.
 * 3) To only change languages in Production:
 * 4) Ask to Alex/Tech Ops to merge this change. It will affect immediately (with next Puppet sync).

Troubleshooting

 * 1) Test your config.yaml/config.yaml.erb changes in Labs and Beta Cluster first before deployment in Production.
 * 2) Check if cxserver restart is needed?
 * 3) Ask in #wikimedia-operations

code
cxserver code is handled via updating cxserver/deploy repository.


 * 1) Merge patch in cxserver repository.
 * 2) Once patch is merged, update cxserver/deploy repository. See: https://git.wikimedia.org/blob/mediawiki%2Fservices%2Fcxserver%2Fdeploy.git/master/README.md
 * 3) Merge patch.
 * 4) Once patch is merged, follow the deployment method below.

Deployment of cxserver/deploy follows non-MediaWiki deployment procedure described at Trebuchet

cxserver

 * 1) Stop if you get new errors not described here!
 * 2) During cxserver code deployment, trying: retry (r), details (d) and yes (y) should fix race conditions occurring during git deploy.
 * 3) Deployment should also restart cxserver on scb1001 and scb1002 hosts to make changes in effect, but in some cases if it doesn't, follow the steps given below:

Apertium service

 * 1) Check if package list are up-to-date in Puppet.
 * 2) Make sure to ask to restart 'apertium-apy' on sca1001 and sca1002 to any Ops member after adding new languages support for Apertium MT.