From a70c0cef23f3f822b6c6c80917faa77999c08c0d Mon Sep 17 00:00:00 2001 From: Flo Date: Fri, 20 Mar 2026 16:19:58 +0100 Subject: [PATCH] fix: actually not deploying via github connection works --- svc/ctrl/worker/deploy/BUILD.bazel | 1 - svc/ctrl/worker/deploy/deploy_handler.go | 24 +++++++++++++++--------- 2 files changed, 15 insertions(+), 10 deletions(-) diff --git a/svc/ctrl/worker/deploy/BUILD.bazel b/svc/ctrl/worker/deploy/BUILD.bazel index 95d9cb2c17..731f1adb32 100644 --- a/svc/ctrl/worker/deploy/BUILD.bazel +++ b/svc/ctrl/worker/deploy/BUILD.bazel @@ -27,7 +27,6 @@ go_library( "//pkg/db", "//pkg/fault", "//pkg/logger", - "//pkg/mysql", "//pkg/ptr", "//pkg/uid", "//svc/ctrl/worker/github", diff --git a/svc/ctrl/worker/deploy/deploy_handler.go b/svc/ctrl/worker/deploy/deploy_handler.go index 794ddfeb1a..4e6ddeb135 100644 --- a/svc/ctrl/worker/deploy/deploy_handler.go +++ b/svc/ctrl/worker/deploy/deploy_handler.go @@ -15,7 +15,6 @@ import ( "github.com/unkeyed/unkey/pkg/db" "github.com/unkeyed/unkey/pkg/fault" "github.com/unkeyed/unkey/pkg/logger" - "github.com/unkeyed/unkey/pkg/mysql" "github.com/unkeyed/unkey/pkg/uid" githubclient "github.com/unkeyed/unkey/svc/ctrl/worker/github" ) @@ -983,15 +982,22 @@ func (w *Workflow) initGitHubStatus( } repoConn, err := restate.Run(ctx, func(runCtx restate.RunContext) (db.GithubRepoConnection, error) { - return db.Query.FindGithubRepoConnectionByAppId(runCtx, w.db.RO(), deployment.AppID) + found, findErr := db.Query.FindGithubRepoConnectionByAppId(runCtx, w.db.RO(), deployment.AppID) + if findErr != nil { + if db.IsNotFound(findErr) { + // No connection — return zero value, not an error. + // Returning an error here would cause Restate to retry forever. + return db.GithubRepoConnection{}, nil //nolint:exhaustruct + } + return db.GithubRepoConnection{}, findErr //nolint:exhaustruct + } + return found, nil }, restate.WithName("find github repo connection")) if err != nil { - if !mysql.IsNotFound(err) { - logger.Warn("failed to look up github repo connection, skipping deployment status reporting", - "app_id", deployment.AppID, - "error", err, - ) - } + logger.Warn("failed to look up github repo connection, skipping deployment status reporting", + "app_id", deployment.AppID, + "error", err, + ) return reporter } @@ -999,8 +1005,8 @@ func (w *Workflow) initGitHubStatus( if repoConn.InstallationID == 0 { logger.Info("no github repo connection, skipping deployment status reporting", "app_id", deployment.AppID, - "error", err, ) + return reporter }