Skip to content

Latest commit

 

History

History
100 lines (68 loc) · 4.41 KB

README.md

File metadata and controls

100 lines (68 loc) · 4.41 KB

Gitpod Browser extension

Setup Automated

This is the browser extension for Gitpod. It supports Chrome (see Chrome Web Store), Firefox (see Firefox Add-ons) and Edge (see how to install Chrome extensions), and adds a Gitpod button to the configured GitLab, GitHub and Bitbucket installations (defaults to gitlab.com, github.com and bitbucket.org) which immediately creates a Gitpod workspace for the current git context:

Gitpodify

Issues

We are currently tracking all issues related to the browser extension in the gitpod-io/gitpod repository. You can use the component: browser-extension label to search for relevant issues including feature proposals and bug reports.

Development

To make changes and test them using Gitpod itself:

  • add test cases to the unit test
  • try out changes like this:
    1. run pnpm build
    2. run pnpm watch-prod and download the built binary for your system (local machine)
    3. run the binary anywhere on your local machine to sync the extension folder locally.
    4. open Chrome and go to chrome://extensions/
    5. enable Developer mode (top right)
    6. click Load unpacked (top left) and select the folder you just downloaded
    7. now you can test your changes
    8. repeat step 1 and 2 and reload the extension whenever you want to test new changes

Or, when developing locally, you can execute the following to enable hot reloading with the extension in Chrome:

pnpm dev

Then, Load unpacked the build/chrome-mv3-dev folder in Chrome and after making changes, pages will reload automatically and the changes will be reflected immediately.

Build

The build happens automatically when you start a workspace but if you want to build explicitly, use these commands:

pnpm install
pnpm build --target=chrome-mv3 # or --target=firefox-mv3
pnpm package --target=chrome-mv3 # or --target=firefox-mv3

Testing

You can test the extension without publishing to the store. Before uploading the bundle to the browser, make sure to build the code, then follow these steps:

For Chrome

  1. Open Chrome
  2. Click Settings -> Extensions -> Load unpacked
  3. Select the chrome-mv3-prod folder inside of build/

For Firefox

  1. Open Firefox
  2. Go to about:debugging#/runtime/this-firefox
  3. Click Load Temporary Add-on -> Select the firefox-mv3-prod.zip file. Please note, that some features (like extension settings) will not work.

Release

We currently publish the extension for Chrome and Firefox.

To release a new version, follow these steps:

  1. Bump up the version value inside package.json (yarn version --patch or yarn version --minor)

  2. Push your changes to main

  3. Compose a list of changes using the list of commits that were pushed since last version

  4. Create a new release, listing changes:

    ### Changes
    
    - Change/Fix A
    - Change/Fix B
    - Change/Fix C
    
    ### Credits
    
    Thanks to @{EXTERNAL_CONTRIBUTOR_USERNAME} for helping! 🍊

For Firefox:

  1. Sign in to https://addons.mozilla.org/en-US/developers/addon/gitpod/edit with the credentials from 1Password
  2. Click Upload new version
  3. Upload the zip file (firefox-mv3-prod.zip)
  4. Go through the steps and submit

For Chrome:

  1. Using your Google account, open the gitpod-browser-extension Google Group
  2. If you don't have access, reach out for help in Slack
  3. Once you are in the Google Group, make sure to "Switch to Gitpod" in the top navbar
  4. Click "Upload new package"
  5. Upload the zip file (chrome-mv3-prod.zip) and submit
  6. Wait a few hours for the review to happen!