(compare with e.g. http://de.wikipedia.org/wiki/Special:Version):
**Extensions**
[] CentralAuth
[] CharInsert
[] Cite (used by many templates!)
[] CodeEditor
[] CodeMirror
[] FlaggedRevs
[] Gadgets
[] [[ https://www.mediawiki.org/wiki/Extension:InviteSignup | InviteSignup ]]
[] MobileFrontend
[] ParserFunctions
[] Parsoid (only the new repository, `mediawiki/services/parsoid`)
[] Scribunto & full Lua scripting language
[] SyntaxHighlight
[] TemplateData
[] TemplateStyles
[] TemplateWizard
[] WikibaseClient
[] WikiEditor
[] VisualEditor (custom role, not the built-in mw-vagrant role for Parsoid/JS)
**Skins**
[] MonoBook
[] Timeless
[] Vector
**Gadgets**
[] [[ https://www.mediawiki.org/wiki/User:Remember_the_dot/Syntax_highlighter | Syntax highlighter ]]
[] [[ https://en.wikipedia.org/wiki/User:Cacycle/wikEd | wikEd ]]
https://wikitech.wikimedia.org/wiki/Help:MediaWiki-Vagrant_in_Cloud_VPS
**Steps to provision**
Set up puppet roles, for any instance with a name starting `mediawiki`-:
```
role::labs::mediawiki_vagrant
role::labs::lvm::srv
```
Create instance with 2 cores. Add the default security group, and a new `web` security group allowing access to TCP port 8080.
Change wiki admin password.
Apply our custom branches:
* [[ https://gerrit.wikimedia.org/r/c/mediawiki/vagrant/+/616521 | Parsoid/PHP ]], see T258940
`git fetch "https://gerrit.wikimedia.org/r/mediawiki/vagrant" refs/changes/21/616521/3 && git cherry-pick FETCH_HEAD`
* [[ https://gerrit.wikimedia.org/r/c/mediawiki/vagrant/+/613207 | settings.d ]] configuration for the test instance
`git fetch "https://gerrit.wikimedia.org/r/mediawiki/vagrant" refs/changes/07/613207/7 && git cherry-pick FETCH_HEAD`
Create the vagrant box with no roles at first,
```
mwvagrant up
```
Enable vagrant roles,
```
mwvagrant roles enable \
betafeatures \
centralauth \
charinsert \
cite \
codeeditor \
codemirror \
flaggedrevs \
gadgets \
invitesignup \
mobilefrontend \
monobook \
parserfunctions \
parsoid_php \
scribunto \
syntaxhighlight \
templatedata \
templatestyles \
templatewizard \
timeless \
wikidata \
wikieditor
```
Update code and database:
mwvagrant git-update
Convert Admin user to CentralAuth
mwvagrant ssh
...
mwscript /vagrant/mediawiki/extensions/CentralAuth/maintenance/migratePass0.php --wiki=wiki
mwscript /vagrant/mediawiki/extensions/CentralAuth/maintenance/migratePass1.php --wiki=wiki
Configured outbound mail according to these manuals. The settings are already bundled with the custom patch above.
https://wikitech.wikimedia.org/wiki/Help:Email_in_Cloud_VPS
https://www.mediawiki.org/wiki/Manual:$wgSMTP
**Create web proxy subdomains**
https://dev-wmde-templates-alpha.wmcloud.org/
https://en-wmde-templates-alpha.wmcloud.org/
https://es-wmde-templates-alpha.wmcloud.org/
https://frwiktionary-wmde-templates-alpha.wmcloud.org/
https://fr-wmde-templates-alpha.wmcloud.org/
https://login-wmde-templates-alpha.wmcloud.org/
https://mobile-wmde-templates-alpha.wmcloud.org/
https://ru-wmde-templates-alpha.wmcloud.org/
https://wikidata-wmde-templates-alpha.wmcloud.org/
https://wiki-wmde-templates-alpha.wmcloud.org/
**Remaining work**
[x] Wikidata role isn't acting right. [[ https://gerrit.wikimedia.org/r/c/mediawiki/vagrant/+/612530 | This patch ]] was suddenly required for unknown reasons. MediaWiki databases did not self-update.
[x] Subdomains should be accessible through "eswiki-wmde-templates-alpha.wmcloud.org", "wikidatawiki-wmde-templates-alpha.wmcloud.org", but these proxies don't seem to be routed successfully by Vagrant's Apache. The vagrant+cloud [[ https://wikitech.wikimedia.org/wiki/Help:MediaWiki-Vagrant_in_Cloud_VPS#Run_a_wikifarm | wikifarm docs ]] aren't quite working for us. Maybe the hostnames are something other than db name?
[x] Parsoid/PHP and VisualEditor configuration.
[x] Using `vagrant reload` or `vagrant halt` may break the Vagrant instance (attempting to visit any wiki will lead to a "No wiki found..." page). Workaround: `mwvagrant ssh` and `sudo service apache2 restart`
Related tickets:
* {T258927}
* {T258563}