Extension:ExtensionDistributor
ExtensionDistributor Release status: stable |
|
---|---|
Implementation | Special page |
Description | Enables the distribution of extensions from www.mediawiki.org |
Author(s) | Tim Starling, Sam Reed, Chad Horohoe |
Latest version | continuous updates |
Compatibility policy | Snapshots releases along with MediaWiki. Master is not backward compatible. |
MediaWiki | 1.26+ |
Database changes | No |
License | GNU General Public License 2.0 or later |
Download | |
|
|
Quarterly downloads | 30 (Ranked 95th) |
Translate the ExtensionDistributor extension if it is available at translatewiki.net | |
Issues | Open tasks · Report a bug |
The ExtensionDistributor extension generates .tar.gz snapshots of extensions in the git repository and distributes them. It is intended for use on www.mediawiki.org. See Special:ExtensionDistributor to see how it works.
Installation
edit- Download and move the extracted
ExtensionDistributor
folder to yourextensions/
directory.
Developers and code contributors should install the extension from Git instead, using:cd extensions/
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/ExtensionDistributor - Add the following code at the bottom of your LocalSettings.php file:
wfLoadExtension( 'ExtensionDistributor' );
- Done – Navigate to Special:Version on your wiki to verify that the extension is successfully installed.
Configuration settings:
/**
* Configuration for the API client to use
*
* Must have a 'class' key, can either be
* "GithubExtDistProvider" or "GerritExtDistProvider"
*
* Common parameters:
* 'apiUrl' - API url to use with $EXT and $REF variables
* 'tarballUrl' - API url where tarballs are located
* 'tarballName' - Expected filename of tarballs
* 'proxy' - Proxy to use (optional)
*
* Github specific parameters:
* 'token' - An OAuth token for authenticating requests
*
* Gerrit specific parameters:
* 'repoListUrl' - API url to fetch a list of repositories
*
* @var array
*/
$wgExtDistAPIConfig = false;
/**
* File to fetch list of extensions from, with one extension per line
* Only needed for the Github provider
* Example url: https://gerrit.wikimedia.org/mediawiki-extensions.txt
*/
$wgExtDistListFile = false;
/**
* Supported branches/tags, master is the default (and shouldn't be removed)
*/
$wgExtDistSnapshotRefs = array(
'master',
);
/**
* Snapshot branch/tag to default to
*/
$wgExtDistDefaultSnapshot = 'master';
You'll need to set up some configuration for the extension to work. For Wikimedia's Gerrit instance, it would look like:
$wgExtDistAPIConfig = array(
'class' => \MediaWiki\Extension\ExtensionDistributor\Providers\GerritExtDistProvider::class,
'apiUrl' => 'https://gerrit.wikimedia.org/r/projects/mediawiki%2F$TYPE%2F$EXT/branches',
'tarballUrl' => 'https://extdist.wmflabs.org/dist/$TYPE/$EXT-$REF-$SHA.tar.gz',
'tarballName' => '$EXT-$REF-$SHA.tar.gz',
'repoListUrl' => 'https://gerrit.wikimedia.org/r/projects/?p=mediawiki/$TYPE/',
);
$wgExtDistSnapshotRefs = array(
'master',
'REL1_25',
);
The Gerrit provider requires an independent tarball generator, the source code for the one running at extdist.wmflabs.org can be found: https://github.com/wikimedia/labs-tools-extdist
This extension is being used on one or more Wikimedia projects. This probably means that the extension is stable and works well enough to be used by such high-traffic websites. Look for this extension's name in Wikimedia's CommonSettings.php and InitialiseSettings.php configuration files to see where it's installed. A full list of the extensions installed on a particular wiki can be seen on the wiki's Special:Version page. |