From 0d6e0fa565cf5093b6d8640983fae72f26e6b837 Mon Sep 17 00:00:00 2001 From: Liosha84 Date: Thu, 29 Oct 2026 00:25:37 +0100 Subject: [PATCH] fix(docker): skip frontend Gradle tasks when SKIP_FRONTEND is set Add onlyIf predicate to installFrontendDependencies and buildFrontend tasks so they are skipped when SKIP_FRONTEND env var is present. This fixes the Docker multi-stage build which failed because Gradle validated input files (package.json, package-lock.json) that don't exist in the builder stage. Also moved the skipFrontend variable definition before task registration for cleaner code organization. Co-authored-by: Junie --- backend/build.gradle | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/backend/build.gradle b/backend/build.gradle index 4f5a920..495bb88 100644 --- a/backend/build.gradle +++ b/backend/build.gradle @@ -35,7 +35,11 @@ def frontendDir = file('../frontend') def frontendDistDir = file('../frontend/dist/frontend/browser') def springStaticDir = file('src/main/resources/static') +// Skip frontend build tasks when building inside Docker (frontend already built in Stage 1) +def skipFrontend = project.hasProperty('skipFrontend') || System.getenv('SKIP_FRONTEND') != null + tasks.register('installFrontendDependencies', Exec) { + onlyIf { !skipFrontend } workingDir frontendDir inputs.file(file('../frontend/package.json')) @@ -50,6 +54,7 @@ tasks.register('installFrontendDependencies', Exec) { } tasks.register('buildFrontend', Exec) { + onlyIf { !skipFrontend } dependsOn 'installFrontendDependencies' workingDir frontendDir @@ -66,9 +71,6 @@ tasks.register('buildFrontend', Exec) { } } -// Skip frontend build tasks when building inside Docker (frontend already built in Stage 1) -def skipFrontend = project.hasProperty('skipFrontend') || System.getenv('SKIP_FRONTEND') != null - tasks.register('copyFrontend', Copy) { onlyIf { !skipFrontend } dependsOn 'buildFrontend'