Firefox/Go Faster/Release Process

From MozillaWiki
< Firefox‎ | Go Faster
Revision as of 21:24, 26 April 2016 by Mkelly (talk | contribs) (Created page with "This page describes the canonical process for releasing a system addon. == Terminology == <dl> <dt>System Addon</dt> <dd>A Firefox addon built-in to Firefox itself that s...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

This page describes the canonical process for releasing a system addon.

Terminology

System Addon
A Firefox addon built-in to Firefox itself that ships with it and is enabled by default.
Live Release
An update to a system addon that occurs outside of the RapidRelease process. Unlike the release trains, live releases can happen at any time. These are pushed out to users by Balrog.

Normal Release

A normal release of a system addon rides the trains and is sent to users along with a normal Firefox release.

  1. Merge any changes for the release to mozilla-central. System addon code for Firefox desktop lives in browser/extensions. Addons that store their source code in a standalone repository typically tag a release and merge the changes all at once.
  2. Optionally, uplift your changes to Aurora or Beta. The standard uplift process applies, including QA and Release Management approval.

Live Release

A live release can target a specific Firefox version, platform, build, etc. Note, however, that users that do not match a live release will be given the version of your system addon that shipped with their current Firefox version. This means that users with a newer version of your addon due to a live release will be downgraded if they are no longer matched by your targeting.

It's generally a good idea to merge your changes to mozilla-central and get them uplifted before performing a live release.

  1. Generate an XPI for the version of your system addon that you wish to release.
  2. File a Cloud Services bug asking for your XPI to be signed with the System Addon signing key. Make sure to attach the XPI to the bug.
  3. Upload the signed XPI to archive.mozilla.org. System addons are stored in the /pub/system-addons/ directory.
  4. Create a release in Balrog pointing to the XPI that you just uploaded.
  5. Create a rule in Balrog on a testing channel that will serve up your new release.
  6. Obtain approval from QA and Release Management to deploy a new live release for your addon. QA will need to know the testing channel you used in order to test the update process.
  7. Modify the Balrog rule to be sent out to the actual channel you wish to target (usually release).