Integrating with GitHub

Authorize GitHub integration

If you would like to fully integrate Supernova with your organization's GitHub account, you can grant Supernova access to any GitHub repository to create pull requests on your behalf. This is done by installing and authorizing the Supernova GitHub App.

Users are always in control of their data. We ask for secure OAuth authentication when creating a pull request which allows the user determine repository access. We recommended that you only provide access to the necessary repositories.

The repository data is not being read in any way. The exported code is pushed to the pull request mechanism, the repository is only scanned at the moment it is pushed, and the code is never stored in Supernova.

If you prefer not to authorize access to a repository that contains production code, it is also possible to create a separate repository for Supernova-created data (to be used as a git submodule). This method eliminates any possibility for Supernova to access parts of the code not maintained by Supernova.

With the secure GitHub authentication, Supernova will have the following permissions: → Read access to metadata → Read and write access to code and pull requests

To authorize GitHub from the Account → Profile Settings page:

  1. Select the Integrations tab.

  2. Under GitHub, click Sign in to sign in to your GitHub account.

  3. Choose All repositories to give access to all of the repositories in your organization, or choose Select repositories to select which repositories Supernova will have access to.

  4. Click Install & Authorize to continue.

To authorize GitHub from the New Build or New Hook dialog:

  1. Set Create pull requests option to ON.

  2. Click Sign in to sign in to your GitHub account.

  3. Choose All repositories to give access to all of the repositories in your organization, or Select repositories to select which repositories Supernova will have access to.

  4. Click Install & Authorize to continue.

After your GitHub authorization is complete, you will now see a list of repositories and branches to choose from during hook or build configuration.

Revoke GitHub authorization

To revoke your GitHub authorization at any time:

  1. Go to your Account settings, located in the top right corner.

  2. Select the Integrations tab.

  3. Under the GitHub section, click Remove.

Choosing a repository and relative path

The repository you selected is where the code from a hook or successful build will be exported. You can also specify a relative path to export to. The path entered is relative to the repository root, example lib/assets/DesignSystem.

Create pull requests

When you create a new hook or build, you can optionally create pull requests in GitHub directly from Supernova.

Creating pull requests from a build

To create a pull request in a chosen repository from a successful build:

  1. On the Builds page, click + New to open the New Build dialog.

  2. After defining your Hook, set Create pull requests option to ON.

  3. If you have not yet integrated with GitHub, follow steps for Authorize GitHub integration.

  4. Optionally, choose a relative path for the export.

  5. Click Run to run the build.

Creating pull requests from a hook

To automatically create pull requests with a hook:

  1. On the Hooks page, click + New to open the New Hook dialog.

  2. After defining your Hook, set Create pull requests option to ON.

  3. If you have not yet integrated with GitHub, follow steps for Authorize GitHub integration.

  4. Optionally, choose a relative path for the export.

  5. Click Confirm to save the hook.

Once the new hook has been created, it will appear in your list of hooks with the Create Pull Request step added.

If you would like to stop the hook from creating pull requests, you can click Disable in the list to temporarily disable the hook, or click Remove to delete the hook completely.

Last updated