From 5c7aaac95527043a81b564c21eed4ac25262ac4a Mon Sep 17 00:00:00 2001 From: Jarvis Date: Sun, 12 Jul 2026 17:19:24 -0500 Subject: [PATCH] ci: restrict push-event CI to protected branches (main) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Every feature-branch push currently fires TWO pipelines — a push CI and a pull_request CI — doubling load on the storage-constrained (spinning-disk) Woodpecker runner. The push run on feature branches is redundant; the PR pipeline is the merge gate. Run push CI only on main; PR + manual CI still run on every branch. ~halves feature-branch CI load, zero loss of gating (branch protection requires no push/ci status context). Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01QDgorbfgN4Fgi1iHGkgndn --- .woodpecker/ci.yml | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/.woodpecker/ci.yml b/.woodpecker/ci.yml index ce4d4da..1789aa8 100644 --- a/.woodpecker/ci.yml +++ b/.woodpecker/ci.yml @@ -7,7 +7,14 @@ variables: - &enable_pnpm 'corepack enable' when: - - event: [push, pull_request, manual] + # PR + manual CI run on any branch — the pull_request pipeline is the merge gate. + # push CI is restricted to protected branches (main) so a feature-branch push no + # longer fires a redundant SECOND pipeline alongside its PR pipeline. This ~halves + # CI load on the storage-constrained runner with zero loss of gating (branch + # protection requires no push/ci status context; main still gets full push CI). + - event: [pull_request, manual] + - event: push + branch: main # Turbo remote cache (turbo.mosaicstack.dev) is configured via Woodpecker # repository-level environment variables (TURBO_API, TURBO_TEAM, TURBO_TOKEN).