diff --git a/.gitea/workflows/docker-publish.yaml b/.gitea/workflows/docker-publish.yaml index 27090187..94431665 100644 --- a/.gitea/workflows/docker-publish.yaml +++ b/.gitea/workflows/docker-publish.yaml @@ -126,10 +126,6 @@ jobs: labels: ${{ steps.meta.outputs.labels }} provenance: false sbom: false -# build-args: | -# DOCKER_BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ') -# VERSION=${{ github.sha }} -# GRADLE_VERSION=${{ env.GRADLE_VERSION }} -# JAVA_VERSION=${{ env.JAVA_VERSION }} -# KEYCLOAK_IMAGE_TAG=${{ env.KEYCLOAK_IMAGE_TAG }} -# JVM_OPTS_APPEND=${{ env.JVM_OPTS_ARM64 }} + build-args: | + BUILD_DATE=${{ github.event.head_commit.timestamp || 'unknown' }} + VERSION=${{ github.sha }} diff --git a/config/docker/caddy/web-app/Dockerfile b/config/docker/caddy/web-app/Dockerfile index e8859a2b..b95ee72f 100644 --- a/config/docker/caddy/web-app/Dockerfile +++ b/config/docker/caddy/web-app/Dockerfile @@ -32,11 +32,9 @@ COPY config/docker/caddy/web-app/config.json /usr/share/caddy/config.json.tmpl RUN chmod +x /entrypoint.sh # Copy Pre-built Static Assets from Host (WasmJs) -# NOTE: CI (docker-publish.yaml) kopiert die gebauten Artefakte nach -# config/docker/caddy/web-app/_site/ bevor dieses Image gebaut wird. -# Lokal musst du vorher bauen: -# ./gradlew :frontend:shells:meldestelle-web:wasmJsBrowserDistribution -Pproduction=true -# und die Dateien ebenfalls nach _site/ kopieren. +# NOTE: BUILD_DATE wird hier genutzt, um den Layer-Cache zu invalidieren, +# falls sich der Code geƤndert hat, aber die Dateimetadaten im Runner-Cache gleich blieben. +ARG BUILD_DATE COPY config/docker/caddy/web-app/_site/ /usr/share/caddy/ # index.html wird als Template abgelegt; der Entrypoint erzeugt daraus zur Laufzeit die finale index.html RUN mv /usr/share/caddy/index.html /usr/share/caddy/index.html.tmpl