GitHub Integration
Connect a GitHub App, pick repositories and deploy on every push.
VPSPilot connects to GitHub through a GitHub App that your install creates for itself, using GitHub’s app manifest flow. There is no shared OAuth app, and the app’s credentials never leave your control plane.
Connect
- Open Settings → GitHub and choose your personal account or an organization.
- GitHub creates the app from VPSPilot’s manifest and redirects back. VPSPilot stores its private key, encrypted.
- Install the app on your account or organization and pick which repositories it may access.
The app asks for read-only access to code and metadata: enough to list repositories, clone them and receive push events.
Deploy on push
GitHub sends push events to /api/v1/github/webhook. VPSPilot checks the signature and deploys every app linked to that repository and branch that has auto-deploy on.
Set PUBLIC_API_URL to the https URL GitHub can reach. When it is empty, AGENT_API_URL is used if it is https. Without either, repositories still deploy manually but pushes are not received.
Per-deployment tokens
For each deployment of a linked repository, VPSPilot mints a short-lived installation token scoped to that single repository with read-only access, and hands it only to the agent running the deploy. The token is never stored.
Disconnect
Disconnecting removes the app’s credentials from VPSPilot. Existing applications keep running, but they can’t be redeployed from private repositories until you connect again. Delete the app on GitHub as well if you no longer need it.