airbytehq / airbytehq/airbyte

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

Aberta
#73,348 2 comentários 0 reações 0 responsáveis Ver no GitHub
autoteam community connectors/source/github team/use type/enhancement
Linguagem predominante
Python
Estrelas
22.1k
Forks
5.4k
Merge médio
5h
PRs com merge (30d)
671

Descrição

> **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

Guia de contribuição

Abrir o guia de contribuição

Avaliação

Esta issue ainda não foi avaliada.

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.