68 lines
1.8 KiB
Batchfile
68 lines
1.8 KiB
Batchfile
@echo off
|
|
setlocal
|
|
|
|
:: Variablen
|
|
set SCRIPT=pyUpload.py
|
|
set EXE_NAME=pyUpload.exe
|
|
set BUILD_DIR=build
|
|
set DIST_DIR=release
|
|
set ZIP_NAME=pyUpload.zip
|
|
set REQ_FILE=requirements.txt
|
|
|
|
:: Liste von Dateien/Ordnern, die beim "clean" entfernt werden sollen
|
|
set DELETE_LIST=build dist __pycache__ *.spec *.zip temp_* logs\* cache\* pyUpload.build\* pyUpload.dist\* upload\* *.pem
|
|
|
|
:: Menü anzeigen
|
|
echo Wähle eine Option:
|
|
echo 1 - Erstelle ausführbare Datei (exe 1)
|
|
echo 2 - Erstelle Release-Paket (release 1+2)
|
|
echo 3 - Erstelle ZIP-Archiv (zip 1+2+3)
|
|
echo 4 - Aufraeumen (clean)
|
|
set /p CHOICE=Eingabe (1-4):
|
|
|
|
if "%CHOICE%"=="1" goto exe
|
|
if "%CHOICE%"=="2" goto release
|
|
if "%CHOICE%"=="3" goto zip
|
|
if "%CHOICE%"=="4" goto clean
|
|
echo Ungültige Eingabe!
|
|
exit /b
|
|
|
|
:exe
|
|
echo Erzeuge ausführbare Datei...
|
|
mkdir %BUILD_DIR% 2>nul
|
|
pyinstaller --onefile --add-data "template.html;." --add-data "success.html;." --add-data "favicon.ico;." --windowed --icon favicon.ico --name %EXE_NAME% %SCRIPT%
|
|
move dist\%EXE_NAME% %BUILD_DIR%\
|
|
echo Erstellung abgeschlossen: %BUILD_DIR%\%EXE_NAME%
|
|
exit /b
|
|
|
|
:release
|
|
call :exe
|
|
echo Erstelle Release-Paket...
|
|
mkdir %DIST_DIR% 2>nul
|
|
copy %BUILD_DIR%\%EXE_NAME% %DIST_DIR%\
|
|
copy %REQ_FILE% %DIST_DIR%\
|
|
copy template.html success.html favicon.ico %DIST_DIR%\
|
|
echo Release-Paket bereit in %DIST_DIR%
|
|
exit /b
|
|
|
|
:zip
|
|
call :release
|
|
echo Erstelle ZIP-Archiv...
|
|
powershell Compress-Archive -Path "%DIST_DIR%\%EXE_NAME%", "%DIST_DIR%\template.html", "%DIST_DIR%\success.html", "%DIST_DIR%\favicon.ico" -DestinationPath "%ZIP_NAME%"
|
|
echo ZIP-Archiv erstellt: %ZIP_NAME%
|
|
exit /b
|
|
|
|
:clean
|
|
echo Bereinige Projektverzeichnis...
|
|
|
|
:: Durchläuft alle Dateien/Ordner in DELETE_LIST
|
|
for %%F in (%DELETE_LIST%) do (
|
|
if exist %%F (
|
|
echo Entferne: %%F
|
|
rmdir /s /q %%F 2>nul || del /q %%F 2>nul
|
|
)
|
|
)
|
|
|
|
echo Bereinigung abgeschlossen.
|
|
exit /b
|