Reading/Web/Setting up a staging environment

Setting up a staging environment for the MobileFrontend and Gather projects is trivial with MediaWiki-Vagrant, though there are some minor manual steps that you'll need to perform.

Defining an instance
An instance should have the following properties:
 * Security groups: web and default
 * Image id: ubuntu-14.04-trusty
 * It should be configured to ensure that the role::labs::vagrant is enabled.

Set up the instance
ssh to the instance and run the following commands:

sudo puppet agent -tv cd /srv/mediawiki-vagrant vagrant enable-role mobilefrontend gather vagrant enable-role geodata confirmedit visualeditor cite echo vagrant enable-role interwiki vagrant provision

Set up regular codebase updates
The simplest solution to this is to regularly run. So, as the vagrant user add the following to the crontab file : */10 * * * * vagrant git-update

Set up the Selenium_newuser and Selenium_user accounts
After you've set up the instance, you'll notice that a Selenium_user account has already been created. You'll need to promote this user, and to create and promote Selenium_newuser as well:

vagrant ssh mwscript maintenance/createAndPromote.php --server wiki --force --bureaucrat --sysop Selenium_user mwscript maintenance/createAndPromote.php --server wiki --force --bureaucrat --sysop Selenium_newuser " "

Set up a handful of interlanguage prefixes
Visit the Special:Interwiki page while logged in as a user with the "interwiki" right and add a handful of stub interlanguage prefixes.

Configure the MobileFrontend extension
See https://phabricator.wikimedia.org/P936 for the production-like configuration for the MobileFrontend extension. Since you're using MediaWiki-Vagrant to set up the instance, you can isolate the MobileFrontend configuration from other extension configurations by creating a file in the  directory, i.e..