GitHub Deployment Bridge
Flux state, mirrored to GitHub Deployments

A Kubernetes controller that watches Flux Kustomizations and HelmReleases and reports lifecycle to the GitHub Deployments API - observe only, never orchestrate.

01

Observe, don't orchestrate

Derives queued, in_progress, success, and failure from Flux conditions. No GitOps reconciliation, no deploy triggers.

02

OCI identity, annotation overrides

Resolves workload images from inventory, reads OCI labels without pulling layers, and merges optional github-deployment-bridge.io annotations.

03

GitHub App, full lifecycle

Authenticates as a GitHub App (never a PAT). One Deployment per key; statuses update through the reconcile, and prior successes go inactive on a newer commit.

04

Idempotent under reconcile churn

SQLite deduplicates on owner, repo, environment, commit, and deployment name. Crash recovery reuses existing Deployments when the cache holds a provisional row.