Requestly Release Process

This article (including all other articles under `Developers` category) are meant for Requestly development team only. If you have any suggestions, please feel free to suggest.

Steps

  1. Checkout master branch and fetch latest code git checkout master && git pull origin master
  2. Checkout production branch – git checkout production && git pull origin production
  3. Merge master branch to it – git merge master
  4. Change browser to chrome in the configs ./rq-config browser=chrome env=prod
  5. Update version number in manifest_chrome.json, mainfest_firefox.json, Gruntfile.json, config/common.json, package.json
  6. Disable Logger in logger.js
  7. Build all the components to test for prod on local machine ./build.sh prod
  8. Run Unit tests – ./test.sh
  9. Refresh chrome://extensions and click on extension icon and run the sample rule
  10. Switch to browser-extension directory cd components/browser-extension
  11. Run build command – grunt release-chrome
  12. Upload the build to Chrome Store
  13. Delete the earliest build. We want to keep only 3 previous builds
  14. Change browser to chrome in the configs ./rq-config browser=firefox env=prod
  15. Run command – ./release_firefox.sh
  16. Copy requestly artefact inside app/public/firefox/builds directory and save it as requestly-latest.xpi
  17. Update latest version in updates.json inside same directory
  18. Enable Logger in logger.js
  19. Update notifications.json and mention about the release
  20. Commit the files – git add .. && git commit -am "Requestly va.b.c released"
  21. Push to production branch – git push origin production
  22. Add tag – git tag -a va.b.c -m "Requestly va.b.c released"
  23. Push the tags – git push --tags origin
  24. Merge to master – git checkout master && git merge production
  25. Change browser to chrome ./rq-config browser=chrome and build ./build.sh beta
  26. Push master – git push origin master
  27. Update Change logs on Releases Page