FROM mcr.microsoft.com/dotnet/sdk:10.0 AS build
WORKDIR /src

COPY NuGet.Config ./
COPY Directory.Build.props ./
COPY Directory.Packages.props ./
COPY src/Cortex.Core/Cortex.Core.csproj src/Cortex.Core/
COPY src/Cortex.Api/Cortex.Api.csproj src/Cortex.Api/
RUN dotnet restore src/Cortex.Api/Cortex.Api.csproj --configfile NuGet.Config

COPY src/Cortex.Core src/Cortex.Core
COPY src/Cortex.Api src/Cortex.Api
RUN dotnet publish src/Cortex.Api/Cortex.Api.csproj -c Release -o /app/publish --no-restore

FROM mcr.microsoft.com/dotnet/aspnet:10.0 AS runtime
WORKDIR /app
COPY --from=build /app/publish .
EXPOSE 8080
ENTRYPOINT ["dotnet", "Cortex.Api.dll"]
