You are browsing a read-only backup copy of Wikitech. The live site can be found at

Deployments/Blocking tasks

From Wikitech-static
< Deployments
Revision as of 06:19, 12 April 2020 by imported>Greg Grossmeier (→‎Limitations: why not)
Jump to navigation Jump to search

Each version of MediaWiki that is deployed to Wikimedia's production clusters should have a corresponding task in Phabricator. When a release-critical issue is discovered and reported in Phabricator, it should be added as a subtask under the blocker task for the most current or any other affected versions. Release engineers monitor all sub-tasks for the deployment branch they are assigned to and all serious issues must be resolved before resuming routine code deployments.

Maintaining the blocking tasks

Periodically, the release manager will create batches of new tasks in Phabricator for planned upcoming MediaWiki version.

SCAP "blockers" plugin

The Release Tools Repository contains a scap plugin named 'blockers' that can be used to automate the creation of a series of tasks in Phabricator.

Usage: scap blockers create [--count NUM] --date START VERSION

You must provide the date and version corresponding to the first task that you will create in the series.

  • The --count argument should be followed by an integer specifying how many new tasks should be created. If --count is omitted then you will only create 1 task.
  • The --date argument should be followed by a date in YYYY-MM-DD format.
  • The last argument on the command line is the wmf version corresponding to the provided date, in #.##.#-wmf.# format.

For Example: With your shell's working directory set to the root of the release tools repo, run the following command to create a series of 2 tasks beginning with 1.31.0-wmf.14 on 2017-12-25

you@yourhost:~/src/release$ scap blockers create --count 2 --date 2017-12-25 1.31.0-wmf.14


The blockers plugin doesn't know when one version series ends and the next begins. You have to create (for example) the 1.31.0-wmf.* series separately from the 1.32.0-wmf.* series.


Scap things

Phabricator API things

  • The phabricator python module
    • pip install phabricator
  • Conduit credentials for the Phabricator API
    • You need to have a .arcrc in your home directory with valid conduit credentials for
    • See for detailed setup instructions.
    • You don't actually need arcanist installed but the easiest way to get the conduit credentials is to follow the arcanist setup instructions.

See Also