From f61df5b43211f72adaa2821b7a40e7313b4a985b Mon Sep 17 00:00:00 2001 From: Ashwin Kumar Date: Fri, 10 Apr 2026 05:43:48 +0200 Subject: [PATCH] perf(woodpecker): add Docker layer caching for faster builds --- .woodpecker.yml | 20 ++++++++++++++------ 1 file changed, 14 insertions(+), 6 deletions(-) diff --git a/.woodpecker.yml b/.woodpecker.yml index 30a1105..f7002cd 100644 --- a/.woodpecker.yml +++ b/.woodpecker.yml @@ -11,22 +11,27 @@ steps: #!/bin/bash set -e - # Get changed files from last commit CHANGED_FILES=$(git diff --name-only HEAD~1 HEAD || echo "") - # Check if relevant files changed (src, package.json, Dockerfile, etc.) + # Skip if only docs changed + if echo "$CHANGED_FILES" | grep -qE "^\.github/|^\.woodpecker|\.md$"; then + if ! echo "$CHANGED_FILES" | grep -qE "^(src/|package\.json|Dockerfile|vite\.config)"; then + echo "⏭️ Only docs changed, skipping" + exit 78 + fi + fi + RELEVANT_CHANGED=false if echo "$CHANGED_FILES" | grep -qE "^(src/|package\.json|package-lock\.json|Dockerfile|vite\.config|tsconfig|public/)"; then RELEVANT_CHANGED=true - echo "✅ Admin panel code changed - will build" + echo "✅ Admin panel code changed" fi - # Exit with code 78 to skip subsequent steps if no changes if [ "$RELEVANT_CHANGED" = "true" ]; then - echo "🚀 Will build admin panel" + echo "🚀 Building admin panel" exit 0 else - echo "⏭️ Skipping admin panel - no relevant changes" + echo "⏭️ Skipping admin panel" exit 78 fi @@ -45,3 +50,6 @@ steps: password: from_secret: GHCR_TOKEN platforms: linux/amd64 + # Enable layer caching + cache_from: ghcr.io/traceworks2023/nxtgauge-admin-solid:cache + cache_to: ghcr.io/traceworks2023/nxtgauge-admin-solid:cache