From e7d4b7a04c1891ba55f43a85f3b8b210a48552d7 Mon Sep 17 00:00:00 2001 From: "j.foucher" Date: Sat, 2 May 2026 11:34:23 +0200 Subject: [PATCH] Add per-module build scripts at repo root build-launcher.bat: publishes PSLauncher.App only (Release single-file). build-updater.bat: publishes PSLauncher.Updater only. build-all.bat: both, sequentially, fast-fail on the first error. All three pause at the end so a double-click from Explorer shows the result before the window closes. The existing build-installer.bat (launcher + updater + Inno Setup .exe) stays as the full release pipeline. Co-Authored-By: Claude Opus 4.7 (1M context) --- build-all.bat | 32 ++++++++++++++++++++++++++++++++ build-launcher.bat | 23 +++++++++++++++++++++++ build-updater.bat | 24 ++++++++++++++++++++++++ 3 files changed, 79 insertions(+) create mode 100644 build-all.bat create mode 100644 build-launcher.bat create mode 100644 build-updater.bat diff --git a/build-all.bat b/build-all.bat new file mode 100644 index 0000000..3d7dde1 --- /dev/null +++ b/build-all.bat @@ -0,0 +1,32 @@ +@echo off +REM Build complet : launcher + updater (sans creer l'installeur). +REM Pour l'installeur Inno Setup, utiliser build-installer.bat. + +setlocal +set "REPO=%~dp0" +echo. +echo ==^> dotnet publish PSLauncher.App (Release single-file) +echo. +dotnet publish "%REPO%src\PSLauncher.App\PSLauncher.App.csproj" -c Release --nologo +if %ERRORLEVEL% NEQ 0 goto :fail + +echo. +echo ==^> dotnet publish PSLauncher.Updater (Release single-file) +echo. +dotnet publish "%REPO%src\PSLauncher.Updater\PSLauncher.Updater.csproj" -c Release --nologo +if %ERRORLEVEL% NEQ 0 goto :fail + +echo. +echo [OK] Les deux exes sont disponibles a la racine du repo : +echo %REPO%PSLauncher.exe +echo %REPO%PSLauncher.Updater.exe +echo. +pause +endlocal & exit /b 0 + +:fail +echo. +echo [ECHEC] Build echoue avec le code %ERRORLEVEL%. +echo. +pause +endlocal & exit /b %ERRORLEVEL% diff --git a/build-launcher.bat b/build-launcher.bat new file mode 100644 index 0000000..32f02ed --- /dev/null +++ b/build-launcher.bat @@ -0,0 +1,23 @@ +@echo off +REM Build du launcher principal (PSLauncher.exe). +REM Sortie : C:\ASTERION\GIT\PS_Launcher\PSLauncher.exe (~78 Mo single-file self-contained) + +setlocal +set "REPO=%~dp0" +echo. +echo ==^> dotnet publish PSLauncher.App (Release single-file) +echo. + +dotnet publish "%REPO%src\PSLauncher.App\PSLauncher.App.csproj" -c Release --nologo +set "EXITCODE=%ERRORLEVEL%" + +echo. +if %EXITCODE% NEQ 0 ( + echo [ECHEC] Build du launcher echoue avec le code %EXITCODE%. +) else ( + echo [OK] PSLauncher.exe disponible a la racine du repo : + echo %REPO%PSLauncher.exe +) +echo. +pause +endlocal & exit /b %EXITCODE% diff --git a/build-updater.bat b/build-updater.bat new file mode 100644 index 0000000..a72b79a --- /dev/null +++ b/build-updater.bat @@ -0,0 +1,24 @@ +@echo off +REM Build de l'updater (PSLauncher.Updater.exe). +REM Sortie : C:\ASTERION\GIT\PS_Launcher\PSLauncher.Updater.exe (~34 Mo single-file) +REM L'updater accompagne PSLauncher.exe — il doit etre dans le meme dossier. + +setlocal +set "REPO=%~dp0" +echo. +echo ==^> dotnet publish PSLauncher.Updater (Release single-file) +echo. + +dotnet publish "%REPO%src\PSLauncher.Updater\PSLauncher.Updater.csproj" -c Release --nologo +set "EXITCODE=%ERRORLEVEL%" + +echo. +if %EXITCODE% NEQ 0 ( + echo [ECHEC] Build de l'updater echoue avec le code %EXITCODE%. +) else ( + echo [OK] PSLauncher.Updater.exe disponible a la racine du repo : + echo %REPO%PSLauncher.Updater.exe +) +echo. +pause +endlocal & exit /b %EXITCODE%