docs: log session outcomes and apply enhancements across multiple components
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
Desktop CI — Headless Tests & Build / Compose Desktop — Tests (headless) & Build (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Has been cancelled
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Has been cancelled
- **Docker Fixes:** Resolved failed builds for Gateway and Ping services by switching to `eclipse-temurin:21-jdk-alpine`, correcting Gradle configurations, and fixing cache mount paths. - **ZNS-Import Consul Registration:** Enabled Consul service discovery by updating `application.yaml` and `build.gradle.kts`. - **pgAdmin Provisioning:** Preconfigured the database server in `servers.json` and updated `dc-ops.yaml` for seamless setup. - **Postman Documentation:** Added a detailed Postman test guide covering environment setup, endpoint groups, and recommended test sequences. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
@@ -5,15 +5,16 @@
|
||||
# ===================================================================
|
||||
|
||||
# === CENTRALIZED BUILD ARGUMENTS ===
|
||||
ARG GRADLE_VERSION=9.3.1
|
||||
ARG JAVA_VERSION=25
|
||||
# HINWEIS: gradle:X.Y-jdkZ-alpine Images existieren nicht für alle Gradle/JDK-Kombinationen.
|
||||
# Wir verwenden eclipse-temurin als Builder-Basis und das Projekt-eigene ./gradlew-Wrapper.
|
||||
ARG JAVA_VERSION=21
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
|
||||
# ===================================================================
|
||||
# Build Stage
|
||||
# ===================================================================
|
||||
FROM gradle:${GRADLE_VERSION}-jdk${JAVA_VERSION}-alpine AS builder
|
||||
FROM eclipse-temurin:${JAVA_VERSION}-jdk-alpine AS builder
|
||||
|
||||
ARG VERSION
|
||||
ARG BUILD_DATE
|
||||
@@ -32,8 +33,7 @@ ENV GRADLE_OPTS="-Dorg.gradle.caching=true \
|
||||
-Dorg.gradle.jvmargs=-Xmx2g \
|
||||
-XX:+UseParallelGC \
|
||||
-XX:MaxMetaspaceSize=512m"
|
||||
|
||||
ENV GRADLE_USER_HOME=/home/gradle/.gradle
|
||||
ENV GRADLE_USER_HOME=/root/.gradle
|
||||
|
||||
# Copy gradle wrapper and configuration files
|
||||
COPY gradlew gradlew.bat gradle.properties settings.gradle.kts ./
|
||||
@@ -60,25 +60,32 @@ RUN mkdir -p \
|
||||
frontend/core/network \
|
||||
frontend/core/local-db \
|
||||
frontend/core/sync \
|
||||
frontend/features/ping-feature \
|
||||
frontend/features/nennung-feature \
|
||||
frontend/shared \
|
||||
frontend/shells/meldestelle-portal \
|
||||
frontend/shells/meldestelle-desktop \
|
||||
frontend/features/ping-feature \
|
||||
frontend/features/nennung-feature \
|
||||
frontend/features/zns-import-feature \
|
||||
frontend/features/billing-feature \
|
||||
frontend/features/pferde-feature \
|
||||
frontend/features/verein-feature \
|
||||
frontend/features/veranstaltung-feature \
|
||||
frontend/features/veranstalter-feature \
|
||||
frontend/features/profile-feature \
|
||||
frontend/features/reiter-feature \
|
||||
frontend/features/turnier-feature \
|
||||
docs
|
||||
|
||||
# Copy root build configuration
|
||||
COPY build.gradle.kts ./
|
||||
|
||||
# Download and cache dependencies
|
||||
RUN --mount=type=cache,id=gradle-cache-gateway,target=/home/gradle/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-gateway,target=/home/gradle/.gradle/wrapper \
|
||||
RUN --mount=type=cache,id=gradle-cache-gateway,target=/root/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-gateway,target=/root/.gradle/wrapper \
|
||||
./gradlew :backend:infrastructure:gateway:dependencies --info
|
||||
|
||||
# Build the application
|
||||
RUN --mount=type=cache,id=gradle-cache-gateway,target=/home/gradle/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-gateway,target=/home/gradle/.gradle/wrapper \
|
||||
RUN --mount=type=cache,id=gradle-cache-gateway,target=/root/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-gateway,target=/root/.gradle/wrapper \
|
||||
./gradlew :backend:infrastructure:gateway:bootJar --info
|
||||
|
||||
# Extract JAR layers
|
||||
|
||||
@@ -5,15 +5,16 @@
|
||||
# ===================================================================
|
||||
|
||||
# === CENTRALIZED BUILD ARGUMENTS ===
|
||||
ARG GRADLE_VERSION=9.3.1
|
||||
ARG JAVA_VERSION=25
|
||||
# HINWEIS: gradle:X.Y-jdkZ-alpine Images existieren nicht für alle Gradle/JDK-Kombinationen.
|
||||
# Wir verwenden eclipse-temurin als Builder-Basis und das Projekt-eigene ./gradlew-Wrapper.
|
||||
ARG JAVA_VERSION=21
|
||||
ARG BUILD_DATE
|
||||
ARG VERSION
|
||||
|
||||
# ===================================================================
|
||||
# Build Stage
|
||||
# ===================================================================
|
||||
FROM gradle:${GRADLE_VERSION}-jdk${JAVA_VERSION}-alpine AS builder
|
||||
FROM eclipse-temurin:${JAVA_VERSION}-jdk-alpine AS builder
|
||||
|
||||
ARG VERSION
|
||||
ARG BUILD_DATE
|
||||
@@ -33,7 +34,7 @@ ENV GRADLE_OPTS="-Dorg.gradle.caching=true \
|
||||
-XX:+UseParallelGC \
|
||||
-XX:MaxMetaspaceSize=512m"
|
||||
|
||||
ENV GRADLE_USER_HOME=/home/gradle/.gradle
|
||||
ENV GRADLE_USER_HOME=/root/.gradle
|
||||
|
||||
# Copy gradle wrapper and configuration files
|
||||
COPY gradlew gradlew.bat gradle.properties settings.gradle.kts ./
|
||||
@@ -64,19 +65,26 @@ RUN mkdir -p \
|
||||
frontend/shells/meldestelle-portal \
|
||||
frontend/shells/meldestelle-desktop \
|
||||
frontend/features/zns-import-feature \
|
||||
frontend/features/veranstalter-feature \
|
||||
frontend/features/veranstaltung-feature \
|
||||
frontend/features/profile-feature \
|
||||
frontend/features/reiter-feature \
|
||||
frontend/features/pferde-feature \
|
||||
frontend/features/verein-feature \
|
||||
frontend/features/turnier-feature \
|
||||
frontend/features/billing-feature \
|
||||
docs
|
||||
|
||||
# Copy root build configuration
|
||||
COPY build.gradle.kts ./
|
||||
|
||||
# Download and cache dependencies
|
||||
RUN --mount=type=cache,id=gradle-cache-ping,target=/home/gradle/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-ping,target=/home/gradle/.gradle/wrapper \
|
||||
RUN --mount=type=cache,id=gradle-cache-ping,target=/root/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-ping,target=/root/.gradle/wrapper \
|
||||
./gradlew :backend:services:ping:ping-service:dependencies --no-daemon --info
|
||||
|
||||
# Build the application
|
||||
RUN --mount=type=cache,id=gradle-cache-ping,target=/home/gradle/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-ping,target=/home/gradle/.gradle/wrapper \
|
||||
RUN --mount=type=cache,id=gradle-cache-ping,target=/root/.gradle/caches \
|
||||
--mount=type=cache,id=gradle-wrapper-ping,target=/root/.gradle/wrapper \
|
||||
./gradlew :backend:services:ping:ping-service:bootJar --no-daemon --info
|
||||
|
||||
# ===================================================================
|
||||
|
||||
@@ -20,6 +20,7 @@ dependencies {
|
||||
implementation(libs.spring.boot.starter.web)
|
||||
implementation(libs.spring.boot.starter.validation)
|
||||
implementation(libs.spring.boot.starter.actuator)
|
||||
implementation(libs.spring.cloud.starter.consul.discovery)
|
||||
|
||||
implementation(libs.exposed.core)
|
||||
implementation(libs.exposed.dao)
|
||||
|
||||
@@ -20,7 +20,17 @@ spring:
|
||||
exclude:
|
||||
- org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaAutoConfiguration
|
||||
- org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
|
||||
|
||||
cloud:
|
||||
consul:
|
||||
host: ${SPRING_CLOUD_CONSUL_HOST:localhost}
|
||||
port: ${SPRING_CLOUD_CONSUL_PORT:8500}
|
||||
enabled: ${CONSUL_ENABLED:true}
|
||||
discovery:
|
||||
enabled: ${CONSUL_ENABLED:true}
|
||||
register: ${CONSUL_ENABLED:true}
|
||||
health-check-path: /actuator/health
|
||||
health-check-interval: 10s
|
||||
instance-id: ${spring.application.name}-${server.port}-${random.uuid}
|
||||
management:
|
||||
endpoints:
|
||||
web:
|
||||
|
||||
Reference in New Issue
Block a user