When a webhook-triggered deploy starts for an app that already has a deploy in progress, the existing deploy is now cancelled via context cancellation before the new deploy begins. This prevents silently lost webhook deploys. Changes: - Add per-app active deploy tracking with cancel func and done channel - Deploy() accepts cancelExisting param: true for webhook, false for manual - Cancelled deployments are marked with new 'cancelled' status - Add ErrDeployCancelled sentinel error - Add DeploymentStatusCancelled model constant - Add comprehensive tests for cancellation mechanics |
||
|---|---|---|
| .. | ||
| app.go | ||
| deployment.go | ||
| env_var.go | ||
| label.go | ||
| models_test.go | ||
| port.go | ||
| user.go | ||
| volume.go | ||
| webhook_event.go | ||