GitHub Actions Webhook¶
Route & Auth¶
| Property | Value |
|---|---|
| Method | POST |
| Path | /webhooks/github/actions |
| Auth type | sha256 |
| Header | X-Hub-Signature-256 |
| Secret | GITHUB_ACTIONS_WEBHOOK_SECRET |
| Service account | github-webhook@alan-eu-tools.iam.gserviceaccount.com |
| Response | 200 OK |
Payload¶
| Field | Type | Description |
|---|---|---|
X-Github-Event |
header | GitHub event type (workflow_job or workflow_run) |
action |
string |
Event action (completed, etc.) |
workflow_job |
dict? |
Job details (conclusion, name, run_id, head_branch) |
workflow_run |
dict? |
Run details (name, head_branch, conclusion) |
repository |
dict |
Repository info |
Behavior¶
Three event paths:
1. Failed workflow jobs on default branch¶
Trigger: workflow_job + completed + conclusion failure/timed_out on main, mobile-release, or submit-for-review branches (excludes claude-code workflows).
Action: Calls ingest_workflow_run to track and notify about CI failures.
2. Completed main deployments¶
Trigger: workflow_run + name backend-main or frontend-main + branch main + conclusion success.
Action: Calls ingest_completed_main_workflow_run to track deployment success.
3. Mobile push-stores workflow¶
Trigger: workflow_run + name frontend-mobile-push-stores + branch alan-mobile-release/* + status completed.
Action: Calls ingest_mobile_push_stores_workflow_run to track mobile store submissions.
Integrations¶
- GitHub API: workflow run and job details
Code reference¶
{{ package_reference("apps.eu_tools.github_actions.webhook") }}