Software update process

From Meta, a Wikimedia project coordination wiki
Jump to navigation Jump to search

This page documents the Wikimedia software update process.

There are mainly two types of MediaWiki developers, those who submit patches to Bugzilla and those who have commit access.

Those with commit access change the (non-live) MediaWiki code in Gerrit, a version control software. Most commits are to "trunk". The code is reviewed by other developers and eventually is "merged from trunk" (MFT) by a system administrator.

In order to update the live code on Wikimedia, the site is "scapped." To "scap" is to run a custom script that syncs all of the various servers that Wikimedia to use a particular file or files. Sometimes the site is scapped and only one particular file is synced to the various application servers. Other times, following an "svn up," all of the application servers are updated to whichever version the sysadmins have decided upon. Scap stands for "Synchronize Common All PHP." All wikis are scapped simultaneously. A bot named "logmsgbot" reports scaps in #wikimedia-tech.

Why is a revision not live on Wikimedia when it's been committed to SVN?

A branching system is used currently; instead of running trunk, Wikimedia runs off of the branch. This means that code committed to trunk must be "merged from trunk" (MFT) into the branch manually. In order to be merged from trunk, code must be properly reviewed and okayed. Adding complication, code review backlogs have emerged, causing much slower site updates.

Further reading[edit]