CloudPilot Support

Deploying automatically from GitHub

A project can deploy itself when you push, instead of you clicking Deploy.

Setting it up#

  1. Open the project and add a webhook. CloudPilot gives you a URL and a secret.
  2. In your GitHub repository, go to Settings → Webhooks → Add webhook.
  3. Paste the URL, paste the secret, and choose the push event.
  4. Push something and watch the deploy start.

The secret matters#

The webhook URL alone would let anyone who learns it trigger deploys. The secret is what proves a request really came from GitHub: GitHub signs each delivery with it, and CloudPilot rejects deliveries whose signature does not match.

Treat it like a password. If it leaks, rotate it.

Which branch#

Pushes to the configured branch deploy. Pushes to other branches are ignored, so feature branches do not each fire a deploy at production.

On a protected project#

If the project is protected, a push does not deploy. It creates a change request, and someone approves it.

That is usually what you want for production: the convenience of automatic deploys, without a push being able to replace what is live on its own.

When a push does not deploy#

Check, in order:

  1. Did GitHub deliver it? The webhook's Recent Deliveries tab in GitHub shows each attempt and the response. A 401 there means the secret does not match; a timeout means the request never arrived.
  2. Was it the right branch?
  3. Is the project protected? Then it is waiting for approval, not broken.
  4. Did the deploy start and fail? Read the deploy log — that is a build problem, not a webhook problem.

Turning it off#

Remove the webhook from GitHub, from CloudPilot, or both. Deleting the project removes its webhook from GitHub on a best-effort basis, but check GitHub afterwards if it mattered.

Did this not answer your question?

Raise a ticket and someone will pick it up. Sign in with the same account you use for the panel.

Raise a ticket