Create the app
1
Register a new GitHub App
GitHub → Settings → Developer settings → GitHub Apps → New GitHub
App. Any name; the slug GitHub derives from it is needed below.
2
Webhook
Set the webhook URL to
<KEEL_BASE_URL>/webhooks/github and choose a
strong webhook secret. Keep it for the configuration step.3
Permissions
Repository permissions: Contents: Read-only and Metadata:
Read-only. Nothing else.
4
Events
Subscribe to Push, Installation target, and Installation
repositories.
5
Private key
Generate a private key and download the
.pem. Note the App ID
shown on the app’s page.Configure Keel Cloud
keel-cloud; the log line GitHub App integration enabled confirms
it. Setting an app ID without a key or without a webhook secret is a startup
error, not a silent fallback.
Install it
Install the app on the GitHub account or organization that owns your repositories, choosing the repositories it may see. The installation registers itself with Keel through the webhook, and those repositories appear under From GitHub on the connect page. The connect page links to the app’s install page when no installation exists yet.Push-triggered deploys
For a repository connected through the app, every push to the connected branch:- Syncs — re-reads
keel.yamlfrom the pushed commit. - Deploys every target of that repository with Deploy automatically on push enabled — but only when the target’s configuration variables are complete and valid, and no run is already active for it.