Tech:Adding a new extension
On this page
Any user can create a pull request to install and enable an extension, but it has to be merged by a Technology team member. If you want to add a new extension, request it here.
All of this stuff needs to be done before the steps above:
- Open a ticket for a Security Review
- Wait. We will review the extension following the MediaWiki extension developers’ security checklist, among other things. If we notice a bug or a security vulnerability, we’ll try to fix it or wait for the extension developers to fix it.
- On passing review, the extension needs to be added to the mediawiki-repos repository on GitHub. There are detailed instructions for how to do this in the README on the repository itself.
The above steps are for the
mediawiki-reposrepository. The following are for themw-configrepository. - ManageWikiExtensions.php gets a setting added as well. (Make sure to check if it requires another extension or if it should be restricted)
- If the extension has database tables, make sure to add them to the ManageWikiExtensions.php config!
- If an extension has settings that are likely to be used or are required to be set, add it to ManageWikiSettings.php
- It is not required, but preferable that you also load it on test151 in order to make sure that everything works as intended
- Setup any other extension globals here.
- Then run the following script on mwtask181 and/or test151:
mwdeploy --world --config --pull=config --l10n --extension-list --servers=all --versions=all
It should be noted that it is a good idea to add any configuration variable the extension adds to ManageWiki to save the effort of doing that at a later date and be user-friendly.
If the extension you installed is not indexed by Codesearch yet (e.g. because it’s hosted on GitHub), consider adding it to https://github.com/MWStake/nonwmf-extensions (or https://github.com/MWStake/nonwmf-skins for skins) so it’s easier for us to find and fix compatibility issues ahead of time.