Connect a Git Provider for App Deploys
Who this is for
Users who want to deploy apps from private git repositories hosted on GitHub, GitLab, Bitbucket, or another git provider.
What Is a Git Account?
A git account is an OAuth or SSH key connection between CloudAIPilot and a git hosting provider. Once connected, CloudAIPilot can:
- List your repositories
- Clone private repositories to your servers
- Set up deploy webhooks automatically
How to Connect a Git Provider
- Go to Organization Settings → Integrations → Git Accounts.
- Click + Connect Git Account.
- Choose your provider:
- GitHub (OAuth)
- GitLab (OAuth or personal access token)
- Bitbucket (OAuth)
- Other (SSH key-based — any git host)
- Follow the authentication flow for your provider.
GitHub / GitLab / Bitbucket:
- You will be redirected to the provider's OAuth authorization page.
- Grant CloudAIPilot access to the repositories you want (you can scope to specific repos or all repos).
- You are redirected back to CloudAIPilot after authorization.
Other / self-hosted:
- CloudAIPilot generates an SSH key pair.
- Copy the public key and add it as a deploy key in your git provider.
- Enter the SSH clone URL in the field.
Using a Connected Git Account in an App
When creating a git-based app:
- In the Git Account dropdown, select the connected account.
- CloudAIPilot populates the repository dropdown with your repos (for OAuth) or accepts a manual URL (for SSH-based).
- Select the repo and branch.
Managing Git Accounts
In Organization Settings → Integrations → Git Accounts you can:
- View all connected accounts
- Refresh OAuth tokens
- Revoke access
- Add additional accounts (useful if you have both a personal GitHub and an organization GitHub)
What Success Looks Like
The git account appears in the list as "Connected". When creating a git-based app, your repositories are accessible from the dropdown.
Common Issues and Fixes
| Issue | Likely cause | Fix |
|---|---|---|
| Repositories not showing | OAuth scope too narrow | Reconnect and grant access to all repositories, or add specific repos. |
| "Permission denied (publickey)" on deploy | Deploy key not added to repo | For SSH-based accounts, add the public key to your git provider's deploy keys. |
| OAuth token expired | Long time since authorization | Go to Git Accounts → Reconnect to refresh the token. |