feature: init kotlin compose multiplatforme
This commit is contained in:
+6
-4
@@ -2,9 +2,11 @@
|
||||
FROM gradle:9.6.1-jdk21-alpine AS cache
|
||||
RUN mkdir -p /home/gradle/cache_home
|
||||
ENV GRADLE_USER_HOME=/home/gradle/cache_home
|
||||
COPY build.gradle.* gradle.properties /home/gradle/app/
|
||||
COPY settings.gradle.kts build.gradle.kts gradle.properties /home/gradle/app/
|
||||
COPY backend/build.gradle.kts /home/gradle/app/backend/
|
||||
COPY shared/build.gradle.kts /home/gradle/app/shared/
|
||||
WORKDIR /home/gradle/app
|
||||
RUN gradle build -i -x check
|
||||
RUN gradle :backend:build -i -x check
|
||||
|
||||
# Stage 2: Build Application
|
||||
FROM gradle:9.6.1-jdk21-alpine AS build
|
||||
@@ -13,11 +15,11 @@ COPY --chown=gradle:gradle . /home/gradle/src
|
||||
WORKDIR /home/gradle/src
|
||||
# Build the fat JAR, Gradle also supports shadow
|
||||
# and boot JAR by default.
|
||||
RUN gradle buildFatJar --no-daemon
|
||||
RUN gradle :backend:buildFatJar --no-daemon
|
||||
|
||||
# Stage 3: Create the Runtime Image
|
||||
FROM eclipse-temurin:21-jre-alpine AS runtime
|
||||
EXPOSE 8080
|
||||
RUN mkdir /app
|
||||
COPY --from=build /home/gradle/src/build/libs/*-all.jar /app/event-demo-all.jar
|
||||
COPY --from=build /home/gradle/src/backend/build/libs/*-all.jar /app/event-demo-all.jar
|
||||
ENTRYPOINT ["java","-jar","/app/event-demo-all.jar"]
|
||||
@@ -4,7 +4,11 @@ FROM gradle:9.6.1-jdk21
|
||||
WORKDIR /app
|
||||
|
||||
# Copie du wrapper et des fichiers de config en premier pour profiter du cache Docker
|
||||
COPY build.gradle.kts settings.gradle.kts ./
|
||||
COPY build.gradle.kts settings.gradle.kts gradle.properties ./
|
||||
|
||||
# Lance les tests Kotlin
|
||||
CMD ["gradle", "test", "--no-daemon"]
|
||||
# Lance les tests Kotlin.
|
||||
# Scope volontairement limite a :backend et :shared : :composeApp applique le plugin Android
|
||||
# (com.android.application), qui echoue a la configuration sans SDK Android installe dans
|
||||
# cette image de test. Ne pas passer a un `gradle test` non scope sans ajouter le SDK Android
|
||||
# a l'image, ou sans configuration-on-demand garantissant que :composeApp n'est pas evalue.
|
||||
CMD ["gradle", ":backend:test", ":shared:test", "--no-daemon"]
|
||||
Reference in New Issue
Block a user