yavsc/Dockerfile

49 lines
2 KiB
Text
Raw Normal View History

2026-06-07 06:05:52 +01:00
# Utilisation de votre image globale pour le build et l'exécution
FROM pazof/yavsc-build-env:latest AS build-env
2026-02-07 23:44:51 +00:00
WORKDIR /src
2026-06-07 06:05:52 +01:00
# 1. Copie de la solution
COPY *.sln ./
COPY Directory.*.props ./
# 2. Copie de l'intégralité des fichiers de projets (.csproj) pour la restauration
COPY src/Yavsc.Org/*.csproj ./src/Yavsc.Org/
COPY src/Yavsc.Abstract/*.csproj ./src/Yavsc.Abstract/
COPY src/Yavsc.Server/*.csproj ./src/Yavsc.Server/
COPY src/Yavsc.Web/*.csproj ./src/Yavsc.Web/
COPY src/Yavsc.Api/*.csproj ./src/Yavsc.Api/
COPY src/Yavsc.Blogs/*.csproj ./src/Yavsc.Blogs/
COPY src/cli/*.csproj ./src/cli/
2026-06-19 20:07:05 +01:00
COPY src/Yavsc.Org.Tests/*.csproj ./src/Yavsc.Org.Tests/
2026-06-07 06:05:52 +01:00
# Projets associés à PostIt
COPY src/PostIt/PostIt/*.csproj ./src/PostIt/PostIt/
COPY src/PostIt/PostIt.Android/*.csproj ./src/PostIt/PostIt.Android/
COPY src/PostIt/PostIt.Browser/*.csproj ./src/PostIt/PostIt.Browser/
COPY src/PostIt/PostIt.Desktop/*.csproj ./src/PostIt/PostIt.Desktop/
2026-06-07 07:35:42 +01:00
# 4. Copie de l'intégralité du code source
COPY . .
2026-06-07 06:05:52 +01:00
# 3. Restauration des dépendances avec vos workloads actifs
2026-05-30 15:57:59 +01:00
RUN dotnet nuget add source https://isn.pschneider.fr/v3/index.json --allow-insecure-connections
2026-06-07 06:05:52 +01:00
2026-06-07 07:20:47 +01:00
# 4. Restauration des dépendances pour tous les projets
RUN dotnet restore
2026-06-07 06:05:52 +01:00
2026-06-07 08:33:58 +01:00
# 5. Copie de la totalité du code source (filtrée par votre .dockerignore)
COPY . .
# Définir une variable d'architecture par défaut (ex: android-arm64)
2026-06-07 12:34:44 +01:00
ARG ANDROID_TARGET_RID=android-arm64
2026-06-07 08:33:58 +01:00
# 6. Compilation du serveur Web principal, Injecter l'option -r avec la variable
2026-06-07 12:41:59 +01:00
RUN dotnet build src/Yavsc.Org/Yavsc.Org.csproj -c Release --no-restore -clp:ErrorsOnly
RUN dotnet build src/Yavsc.Api/Yavsc.Api.csproj -c Release --no-restore -clp:ErrorsOnly
RUN dotnet build src/Yavsc.Blogs/Yavsc.Blogs.csproj -c Release --no-restore -clp:ErrorsOnly
2026-06-07 12:34:44 +01:00
# 6. Compilation du serveur Web principal Injecter l'option -r avec la variable
2026-06-07 12:57:41 +01:00
RUN dotnet build src/PostIt/PostIt.Android/PostIt.Android.csproj -c Release --no-restore -clp:ErrorsOnly -r ${ANDROID_TARGET_RID}
2026-06-07 06:05:52 +01:00
2026-06-07 08:33:58 +01:00
# Définition du répertoire d'exécution par défaut
2026-06-07 06:05:52 +01:00
CMD ["bash"]