Banana uses GitHub in two ways:
Initial login to Banana uses an OAuth app. This is used only to retrieve your username and GitHub ID.
The git-based deployment system of Banana uses a GitHub App to monitor push events and trigger builds for models built from those repos.
- Repo Contents
- Organization Metadata
- Organization Members
Installing the App gives you the option to view all repos, or scope it to only specific repos.
Banana uses the integration auth to automatically pull repo contents after push events to
main. This repo content is run through a Docker build. All network calls in the build pipeline are encrypted, and repo data is never stored on Banana servers. Humans never see private repo contents.
You may install the GitHub App onto multiple GitHub accounts:
- your own account
- any Organizations that you are an Admin in
You may choose as many of these as you'd like.
Since users may install the Banana App onto multiple shared GitHub organizations, there is a chance that another org admin already installed the App onto your org. If this is the case, you'd see the word "configure" next to the org while installing.
You can still complete the integration with your Banana account! in the
Where do you want to install Banana Serverless GPUs?page:
- 1.select the org
- 2.modify the settings of the install, even if you change values, and then immediately set them back. Toggling settings around enables the "Save" button.
- 3.click "Save"
This fires a post-install event that Banana uses to associate your Banana account with the GitHub install.
Note that anyone in the organization can remove the Banana app. This will block future build events from going through, but existing Banana deployments will continue running.