From e656d670adfc6b8df21845457e9985a236912b06 Mon Sep 17 00:00:00 2001 From: Codex Date: Wed, 8 Jul 2026 20:24:46 +0200 Subject: [PATCH] fix(cicd): ack gitea mirror webhooks before sync --- ...platform-infra-gitea-github-sync-server.mjs | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/scripts/src/platform-infra-gitea-github-sync-server.mjs b/scripts/src/platform-infra-gitea-github-sync-server.mjs index a91de9d8..e6ec79a3 100644 --- a/scripts/src/platform-infra-gitea-github-sync-server.mjs +++ b/scripts/src/platform-infra-gitea-github-sync-server.mjs @@ -54,13 +54,17 @@ createServer(async (req, res) => { return; } running.add(repo.key); - try { - const sync = syncRepository(repo); - log({ event: "github-to-gitea-sync", repo: repo.key, ok: sync.ok, sourceCommit: sync.sourceCommit, snapshotRef: sync.snapshotRef, error: sync.error ? redact(sync.error) : null, elapsedMs: Date.now() - startedAt, valuesPrinted: false }); - writeJson(res, sync.ok ? 200 : 500, { ok: sync.ok, event, repository, ref, repo: repo.key, ...sync, valuesPrinted: false }); - } finally { - running.delete(repo.key); - } + writeJson(res, 202, { ok: true, event, repository, ref, repo: repo.key, disposition: "accepted", valuesPrinted: false }); + setImmediate(() => { + try { + const sync = syncRepository(repo); + log({ event: "github-to-gitea-sync", repo: repo.key, ok: sync.ok, sourceCommit: sync.sourceCommit, snapshotRef: sync.snapshotRef, error: sync.error ? redact(sync.error) : null, elapsedMs: Date.now() - startedAt, valuesPrinted: false }); + } catch (error) { + log({ event: "github-to-gitea-sync-error", repo: repo.key, ok: false, error: redact(String(error?.message || error)), elapsedMs: Date.now() - startedAt, valuesPrinted: false }); + } finally { + running.delete(repo.key); + } + }); } catch (error) { log({ event: "github-to-gitea-sync-error", ok: false, error: String(error?.message || error), valuesPrinted: false }); writeJson(res, 500, { ok: false, error: String(error?.message || error), valuesPrinted: false });