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