Tech:Adding a new extension

From Miraheze Meta, Miraheze's central coordination wiki

Any user can create a pull request to install and enable an extension, but it has to be merged by a sysadmin. If you want to add a new extension, request it here.

All of this stuff needs to be done before the steps above:

  1. Open a ticket for a Security Review
  2. 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.
  3. 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-repos repository. The following are for the mw-config repository.

  1. ManageWikiExtensions.php gets a setting added as well. (Make sure to check if it requires another extension or if it should be restricted)
  2. If the extension has database tables, make sure to add them to the ManageWikiExtensions.php config!
  3. 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.
  4. Then run the following script on mwtask181 and/or test151: mwdeploy --world --config --l10n --extension-list --servers=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.

See also[edit | edit source]