airbytehq / airbytehq/airbyte

[source-github] Add Deployment Statuses stream for DORA/Lead Time metrics

Ouverte
#73,348 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
autoteam community connectors/source/github team/use type/enhancement
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.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.