ARG BASE_IMAGE
ARG BASE_IMAGE_RUN
FROM ${BASE_IMAGE} AS builder
WORKDIR /home/app

COPY classes /home/app/classes
COPY dependency/release/ /home/app/libs/release/
COPY dependency/snapshot/ /home/app/libs/snapshot/
COPY graalvm-reachability-metadata /home/app/graalvm-reachability-metadata
COPY native/generated /home/app/
COPY *.args /home/app/graalvm-native-image.args
ARG CLASS_NAME
RUN native-image @/home/app/graalvm-native-image.args -H:Class="${CLASS_NAME}" -H:Name=application -cp "/home/app/libs/release/*:/home/app/libs/snapshot/*:/home/app/classes/"

FROM ${BASE_IMAGE_RUN}
COPY --from=builder /home/app/application /app/application

ARG PORTS=8080
EXPOSE ${PORTS}
ENTRYPOINT ["/app/application"]
