FROM maven:3.9.9-eclipse-temurin-21 AS dependency-cache

WORKDIR /src
COPY pom.xml ./
RUN mvn -B dependency:go-offline

FROM dependency-cache AS build
COPY src ./src
RUN mvn -B package -DskipTests

FROM eclipse-temurin:21-jre-jammy
WORKDIR /app
COPY --from=build /src/target/fragment-gate.jar /app/fragment-gate.jar
COPY docker/entrypoint.sh /app/entrypoint.sh
RUN mkdir -p /tmp/gateway-state && chmod 0555 /app/entrypoint.sh
EXPOSE 8001
ENTRYPOINT ["/app/entrypoint.sh"]
