Skip to content

Latest commit

 

History

History
76 lines (62 loc) · 3.95 KB

RELEASE-PROCESS.md

File metadata and controls

76 lines (62 loc) · 3.95 KB

Release Process


This process can be used to push a manual release to the Firefox Add-Ons and Chrome Web Store. Before you can do that you need to:

Tag a Release

  • Bump <semver> version in add-on/manifest.common.json
  • Create a chore(main): Release v<semver> PR.
  • Create a PR for Release
    • Generate and push the tag to github
        git tag v<semver> && git push && git push origin v<semver> # Don't forget the 'v' prefix

Build Release Artifacts

  • run npm run release-build
  • build folder would contain three artifacts, one each for:
    • brave
    • chromium
    • firefox
  • Attach these assets to the draft release.

Publish on Chrome Web Store

All Chromium-based browsers support install from Chrome Web Store. Brave, Opera, and Edge do not require additional publishing step.

  • IPFS Companion Chrome Webstore: https://chrome.google.com/webstore/detail/ipfs-companion/nibjojkomfdiaoajekhjakgkdhaomnch
  • Publishing requires your Google Account to belong to the IPFS Companion Maintainers Google Group (ask IPFS Stewards to be added).
  • Go to Developer Dashboard and select publisher: IPFS Shipyard.
  • Select Package from the left sub-menu.
  • Upload the newly built package for Chromium earlier.
  • The new package goes to draft state automatically.
  • Go to Store listing section from the left sub-menu.
  • Click Save Draft and then Submit for Review.
  • "Review" may take from a few hours to a few days. Google sends no email informing when new version is approved.
  • Only way to check it is to inspect the version number on the store listing or Dev Dashboard.
  • IPFS Companion Firefox Add-On: https://addons.mozilla.org/en-US/firefox/addon/ipfs-companion/
  • Publishing requires logging into a Developer Account at Firefox Add-Ons site. The account needs to be marked as one of developers of IPFS Companion (ask IPFS Stewards to be added).
  • Goto Manage My Submissions from the drop-down menu from your username.
  • Select IPFS Companion item.
  • On the left menu select Manage Status & Versions
  • Open the latest one in a new tab because you'll need this for reference for copying listing details.
  • Click Upload a New Version.
  • Select the Firefox-specific asset generated earlier.
  • For Compatibility select both :
    • Firefox
    • Firefox for Android
  • Optionally quickly check the validation report to see there are no blocking validations.
  • Click continue.
  • When asked: Do you need to submit source code select yes
    • Go to Github Release and download .zip with Source Code for the release tag.
    • Upload it to Mozilla.
  • In the field asking for release notes just link to the release at Github
  • Add Instructions/Notes for the reviewer (Warning: if you forget, the release may be rejected during human review):
    • Reuse the explanation from the previous release (ask reviewer to run the npm run release-build so they can run the build in a Docker container and get reproducible result across platforms)
  • The new build is published immediately, but it will be reviewed in a week by a real human (unlike Chrome Web Store), and can be taken down if it doesn’t meet the guidelines around privacy and reproducibility.

Release on Github.

Release the draft release just created. That's it!