Setup Wiki Family on CX / SX staging
Open, MediumPublic8 Estimated Story Points

Description

We use https://sx.wmflabs.org/ as the staging environment for SX / CX testing. We would like to have the staging environment be as close as possible to the production server. On production, CX runs on the Wikipedia wiki family. Setting that up on staging would help with having a QA environment that's more representative of production server.

There are two potential ways of doing this:

  1. Use mw-cli to setup the wiki family as outlined in https://www.mediawiki.org/wiki/User:Santhosh.thottingal/WikiFamily - This is the approach that we use on our local development environment
  2. Follow the steps outlined here: https://www.mediawiki.org/wiki/Manual:Wiki_family to setup the wiki family. This does not require mw-cli or docker.

Irrespective of how we setup the Wiki family, we would also like to have all the extensions mentioned in this setup installed on the server: https://www.mediawiki.org/wiki/User:Santhosh.thottingal/WikiFamily


to be considered after completing T346894: Update Language team's cloud instances

Event Timeline

mw-cli can help us to create many language wikis in a cloud instance.
So we can have http://en.mediawiki.mwdd.localhost:8080, http://ig.mediawiki.mwdd.localhost:8080 ..

and http://cxserver.mediawiki.mwdd.localhost:8080

There is a problem to expose this wiki instances in a public wmcloud instance. ideally, we would like to see en.cxtest.wmcloud.org, ig.cxtest.wmcloud.org etc.

However, wmcloud, atleast from its horizon webinterface does not seem to support an instance with sub domains as above.

ccing @aborrero, @taavi based on an initial conversation with @Slst2020

Any ideas on how to approach this? Thanks in advance!

We could create web proxies like en-cxtest.org and ig-cxtest.wmcloud.org but I have no idea how mw-cli handles routing to wikis (tried to read the docs, but they were underwhelming). I guess at worst case we could nginx proxy on the instance to redirect to mw-cli nginx while rewriting the domains.