feat: move codegen out of docker builder

This commit is contained in:
Finn Linck Ryan 2025-12-13 23:33:17 +01:00
parent e798f36851
commit 51cea5d0fe
4 changed files with 10 additions and 17 deletions

View file

@ -67,10 +67,6 @@ jobs:
with:
context: .
push: true
build-args: |
DB_URL=jdbc:postgresql://localhost:5432/homepage
DB_USERNAME=postgres
DB_PASSWORD=postgres
tags: ${{ steps.meta.outputs.tags }}
labels: ${{ steps.meta.outputs.labels }}
cache-from: type=gha

4
.gitignore vendored
View file

@ -38,6 +38,10 @@ replay_pid*
**/build/
!**/src/**/build/
# Allow generated code fragments for Docker builds
!build/generated-src/
!build/generated-resources/
# Ignore Gradle GUI config
gradle-app.setting

View file

@ -1,13 +1,6 @@
# --- Stage 1: Build the JAR ---
FROM gradle:9.2.1-jdk21 AS build
ARG DB_URL
ARG DB_USERNAME
ARG DB_PASSWORD
ENV DB_URL=${DB_URL}
ENV DB_USERNAME=${DB_USERNAME}
ENV DB_PASSWORD=${DB_PASSWORD}
# Set working dir
WORKDIR /app
@ -18,8 +11,12 @@ COPY --chown=gradle:gradle gradle ./gradle
# Copy source code
COPY --chown=gradle:gradle src ./src
# Build the fat jar
RUN ./gradlew clean build --no-daemon
# Copy pre-generated code fragments
COPY --chown=gradle:gradle build/generated-src ./build/generated-src
COPY --chown=gradle:gradle build/generated-resources ./build/generated-resources
# Build the fat jar without cleaning (preserves generated code)
RUN ./gradlew build -x clean -x cleanGenerated -x jooqCodegen -x flywayMigrate -x precompileJte --no-daemon
# --- Stage 2: Run the app ---
FROM eclipse-temurin:21-jdk-alpine

View file

@ -296,7 +296,3 @@ tasks.register("cleanGenerated") {
logger.lifecycle("✓ Cleaned generated code directories")
}
}
tasks.named("clean") {
dependsOn("cleanGenerated")
}