[source-github] Add Deployment Statuses stream for DORA/Lead Time metrics
- Langage dominant
- Python
- Étoiles
- 22.1k
- Forks
- 5.3k
- Métriques de merge des PR
- Métriques de PR en attente
Description
> **Note:** This issue re-opens #72332, which was falsely closed.
## Feature Description
Add a **Deployment Statuses** stream to the GitHub source connector, fetching from:
```
GET /repos/{owner}/{repo}/deployments/{deployment_id}/statuses
```
## Why the Existing Deployments Stream Is Insufficient
The current Deployments stream provides `created_at` and `updated_at`, but these are **not reliable for measuring deployment completion**:
| Field | What it represents | Problem |
| --- | --- | --- |
| created_at | When deployment was *initiated* | Not completion time |
| updated_at | When deployment *record* was modified | Doesn't reflect status changes; no state info |
Deployment statuses are **separate records** from deployments. When a CI/CD system reports success/failure, it creates a status record; the deployment's `updated_at` may not change at all.
## What Deployment Statuses Provides
```json
{
"state": "success",
"created_at": "2026-01-26T10:03:00Z"
}
```
## Use Case: Engineering Metrics
| Metric | Requires |
| --- | --- |
| Lead Time for Changes | success status created_at (not deployment updated_at) |
| Deployment Duration | success status created_at − deployment created_at |
| Deployment Frequency | Count where state = "success" |
| Change Failure Rate | failure/error count ÷ total |
## Implementation Notes
- Child stream of existing Deployments (use `statuses_url` from each deployment)
- Incremental based on `created_at`
- API docs: https://docs.github.com/en/rest/deployments/statuses
---
**Original issue:** https://github.com/airbytehq/airbyte/issues/72332
**Internal Tracking:** https://github.com/airbytehq/oncall/issues/11034
Guide de contribution
Ouvrir le guide de contribution
Évaluation
Cette issue n'a pas encore été évaluée.