####################################################
# GLOBAL VARIABLE DECLARATION
####################################################
ARG REPO_PORT_DEFAULT=8090
ARG SERVICE_DIRECTORY=/typid
####################################################


FROM eclipse-temurin:17 AS build-typid
LABEL maintainer="webmaster@datamanager.kit.edu"
LABEL stage=build
RUN mkdir -p ${SERVICE_DIRECTORY}/
WORKDIR ${SERVICE_DIRECTORY}/
COPY . .
RUN ./gradlew build --stacktrace && \
    cp build/libs/TypedPIDMaker*.jar ../


# Create a clean, minimal image
FROM eclipse-temurin:17 as typed-pid-maker
LABEL maintainer="webmaster@datamanager.kit.edu"
LABEL stage=run

ENV REPO_PORT=${REPO_PORT_DEFAULT}

RUN mkdir -p ${SERVICE_DIRECTORY}/config
COPY --from=build-typid ${SERVICE_DIRECTORY}/TypedPIDMaker*.jar ${SERVICE_DIRECTORY}/TypedPIDMaker.jar
COPY config/* ${SERVICE_DIRECTORY}/config/
EXPOSE ${REPO_PORT}
CMD bash ./TypedPIDMaker.jar
