blob: feb9744b1b40ef36364405d5a99989ac0b3e2b18 [file] [log] [blame] [view]
avm99963ea37fdf2021-02-03 01:27:13 +01001# Release cycle
2When the code in the `master` branch is considered to be stable, a release can
3be made. This is the procedure:
4
51. Tag the last commit with a version number (in the format `vx`, where x is the
6extension's [version number](https://developer.chrome.com/extensions/manifest/version)
7for that release) by running `bash tagRelease.bash --version vx`. Note that the
8tag must be pushed to Gerrit after being created.
92. [Build the extension](build.md) for both the stable and beta channels. This
10will output a ZIP file for each release channel and each supported browser.
11
12Afterwards, the release/build files must be submitted to the Chrome Web Store
13and addons.mozilla.org.
14
15## Submitting to the Chrome Web Store
161. [Upload both release files](https://developer.chrome.com/webstore/publish#upload-your-item)
17to the Chrome Web Store, one for each release channel.
182. [Submit both releases](https://developer.chrome.com/webstore/publish#submit-your-item-for-publishing)
19to be reviewed by the Chrome Web Store team, but in the case of the stable
20channel uncheck the "Publish automatically after it has passed review" option.
213. Upload the beta release file to the
22[GitHub releases page](https://github.com/avm99963/infinitegforums/releases)
23under the newly created tag. Mark that release as a pre-release at GitHub.
244. Wait until the beta release is reviewed and approved by Google.
255. Test again the extension by using the beta channel. Check if the options have
26been transfered correctly from version to version, and wait some days (for
27instance between 3 and 5 days) to see if other people report issues with the
28updated version.
296. If everything goes well, publish the update in the stable channel. The
30updated version should have already been reviewed by the Chrome Web Store team
31at this time.
327. Update the release file in the GitHub releases page by removing the beta
33release file and uploading the stable release file. Also, remove the pre-release
34label.
35
36If during this process the release wasn't approved by Google or an issue was
37found during beta testing, a new release which fixes this should be created and
38the previous stable update should be canceled and superseded by the new release.
39
40## Submitting to addons.mozilla.org
41The procedure is similar to the one with the Chrome Web Store, except for the
42fact that the stable version is directly uploaded to the store.
43
44TODO(avm99963): Add more details here.