feat: report deployment status to GitHub Deployments API by Flo4604 · Pull Request #5254 · unkeyed/unkey
This was referenced
Mar 9, 2026
Flo4604
marked this pull request as ready for review
Show deployment progress on GitHub PRs like Vercel — environment name, status indicator, and deployment link. - Add `github_deployment_id` column to deployments table - Add `CreateDeployment` and `CreateDeploymentStatus` to GitHubClient - Create `deploymentStatusReporter` interface with noop pattern - Wire status reporting into deploy workflow lifecycle - Add `pkg/httpclient` generic HTTP helper to clean up GitHub API calls - Refactor existing GitHub client to use httpclient (removes boilerplate) Status updates at each phase: pending → in_progress (build/deploy/network) → success/failure All GitHub calls are fire-and-forget — GitHub outages never block deploys.
…t status - Add dashboard_url toml config (defaults to https://app.unkey.com) - Add logURL param to CreateDeploymentStatus for GitHub "View logs" link - Set dashboard_url to http://localhost:3000 in local dev - Add debug logging when repo connection is not found
Split monolithic github_status.go into: - status_reporter.go: interface + factory (createStatusReporter) - status_reporter_noop.go: no-op implementation - status_reporter_github.go: GitHub Deployments API implementation
Use config struct instead of 10 positional params, extract formatEnvironmentLabel and formatDomainPrefix helpers, make interface file minimal with just the interface definition.
- Regenerate BUILD.bazel for split status reporter files - Add ghDeploymentID to exhaustruct init - Add DashboardURL to harness config
Flo4604
deleted the
feat/github-deployment-status
branch
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode characters