From 8652dd722e54310be60a249645b6a74741da4e2a Mon Sep 17 00:00:00 2001 From: Marc Mintel Date: Mon, 23 Feb 2026 12:42:05 +0100 Subject: [PATCH] perf(ci): optimize pipeline via parallelization, caching and conditional audits --- .gitea/workflows/ci.yml | 1 + .gitea/workflows/deploy.yml | 11 +++++++---- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/.gitea/workflows/ci.yml b/.gitea/workflows/ci.yml index 211e9b32..85b728e7 100644 --- a/.gitea/workflows/ci.yml +++ b/.gitea/workflows/ci.yml @@ -14,6 +14,7 @@ jobs: uses: actions/setup-node@v4 with: node-version: 20 + cache: 'pnpm' - name: Setup pnpm uses: pnpm/action-setup@v3 diff --git a/.gitea/workflows/deploy.yml b/.gitea/workflows/deploy.yml index c4e8cff1..a2cd7126 100644 --- a/.gitea/workflows/deploy.yml +++ b/.gitea/workflows/deploy.yml @@ -42,7 +42,7 @@ jobs: run: | echo "Purging old build layers and dangling images..." docker image prune -f - docker builder prune -f --filter "until=6h" + docker builder prune -f --filter "until=24h" - name: Checkout repository uses: actions/checkout@v4 @@ -158,6 +158,7 @@ jobs: uses: actions/setup-node@v4 with: node-version: 20 + cache: 'pnpm' - name: Setup pnpm uses: pnpm/action-setup@v3 with: @@ -180,7 +181,7 @@ jobs: # ────────────────────────────────────────────────────────────────────────────── build: name: 🏗️ Build - needs: [prepare, qa] + needs: [prepare] if: needs.prepare.outputs.target != 'skip' runs-on: docker container: @@ -379,7 +380,7 @@ jobs: smoke_test: name: 🧪 Smoke Test needs: [prepare, deploy] - if: needs.deploy.result == 'success' + if: needs.deploy.result == 'success' && needs.prepare.outputs.target != 'branch' runs-on: docker container: image: catthehacker/ubuntu:act-latest @@ -390,6 +391,7 @@ jobs: uses: actions/setup-node@v4 with: node-version: 20 + cache: 'pnpm' - name: Setup pnpm uses: pnpm/action-setup@v3 with: @@ -411,7 +413,7 @@ jobs: lighthouse: name: ⚡ Lighthouse needs: [prepare, deploy] - if: success() && needs.prepare.outputs.target != 'skip' + if: success() && needs.prepare.outputs.target != 'skip' && needs.prepare.outputs.target != 'branch' runs-on: docker container: image: catthehacker/ubuntu:act-latest @@ -422,6 +424,7 @@ jobs: uses: actions/setup-node@v4 with: node-version: 20 + cache: 'pnpm' - name: Setup pnpm uses: pnpm/action-setup@v3 with: