#See https://aka.ms/containerfastmode to understand how Visual Studio uses this Dockerfile to build your images for faster debugging.

FROM 10.99.253.167:8090/dotnet/runtime:7.0 AS base
WORKDIR /app

FROM 10.99.253.167:8090/dotnet/sdk:7.0 AS build
WORKDIR /src
COPY ["NuGet.config", "."]
COPY ["PARR.Worker/PARR.Worker/PARR.Worker.csproj", "PARR.Worker/PARR.Worker/"]
COPY ["PARR.AIHIT/AIHIT/PARR.AIHIT.csproj", "PARR.AIHIT/AIHIT/"]
COPY ["PARR.DAL/PARR.DAL.csproj", "PARR.DAL/"]
COPY ["PARR.Mail/PARR.Mail/PARR.Mail.csproj", "PARR.Mail/PARR.Mail/"]
RUN dotnet restore "PARR.Worker/PARR.Worker/PARR.Worker.csproj"
COPY . .
WORKDIR "/src/PARR.Worker/PARR.Worker"
RUN dotnet build "PARR.Worker.csproj" -c Release -o /app/build

FROM build AS publish
ARG app_version=0.0.0-default
RUN dotnet publish "PARR.Worker.csproj" -c Release -o /app/publish /p:UseAppHost=false /p:Version=$app_version

FROM base AS final
WORKDIR /app
COPY --from=publish /app/publish .
ENTRYPOINT ["dotnet", "PARR.Worker.dll"]


### EXAMPLE ###
# docker build -t parr-aihit-syncher:v1.0.0 --build-arg app_version=1.0.0 -f PARR.Worker/Dockerfile .