# Build context : racine du monorepo
#   docker build -f identity-ms/Dockerfile .

# ─── Étape 1 : build ───────────────────────────────────────
FROM maven:3.9-eclipse-temurin-17 AS build
WORKDIR /workspace

# Installer common-module dans le repo Maven local
COPY common-module/pom.xml common-module/pom.xml
COPY common-module/src     common-module/src
RUN mvn -f common-module/pom.xml clean install -DskipTests -q

# Résoudre les dépendances (optimise le cache Docker)
COPY identity-ms/pom.xml identity-ms/pom.xml
COPY identity-ms/sonar-project.properties identity-ms/sonar-project.properties
RUN mvn -f identity-ms/pom.xml dependency:go-offline -q

# Compiler
COPY identity-ms/src identity-ms/src
RUN mvn -f identity-ms/pom.xml clean package -DskipTests -q

# ─── Étape 2 : image finale ────────────────────────────────
FROM eclipse-temurin:17-jre-jammy
WORKDIR /app
COPY --from=build /workspace/identity-ms/target/*.jar app.jar
EXPOSE 8081
ENTRYPOINT ["java", "-jar", "app.jar"]
