git_issue_importer/update.bat
2025-03-10 18:06:17 +01:00

59 lines
No EOL
1.8 KiB
Batchfile

@echo off
:: Automatisches Update-Skript für Forgejo Issues (Windows)
:: Dieses Skript kann als geplante Aufgabe eingerichtet werden, um Issues regelmäßig zu aktualisieren
:: Konfiguration
set SCRIPT_DIR=%~dp0
set PYTHON_SCRIPT=%SCRIPT_DIR%forgejo_exporter.py
set OUTPUT_DIR=%SCRIPT_DIR%forgejo_issues
set LOG_FILE=%SCRIPT_DIR%forgejo_update.log
:: Forgejo-Einstellungen
set REPO_OWNER=Comenius-Institut
set REPO_NAME=FOERBICO
:: Setze REPO_NAME=all um alle Repositories des Besitzers zu exportieren
:: Optionen
set INCLUDE_COMMENTS=true
set INCLUDE_CLOSED=true
:: Funktion zur Protokollierung
echo [%date% %time%] Starte Forgejo-Issues Update >> "%LOG_FILE%"
:: Prüfe, ob das Python-Skript existiert
if not exist "%PYTHON_SCRIPT%" (
echo [%date% %time%] FEHLER: Python-Skript nicht gefunden: %PYTHON_SCRIPT% >> "%LOG_FILE%"
exit /b 1
)
:: Erstelle den Ausgabeordner, falls er nicht existiert
if not exist "%OUTPUT_DIR%" mkdir "%OUTPUT_DIR%"
:: Baue die Befehlszeile
cd "%SCRIPT_DIR%"
set CMD=python "forgejo_exporter.py" --owner "%REPO_OWNER%" --repo "%REPO_NAME%" --output "%OUTPUT_DIR%"
if "%INCLUDE_COMMENTS%"=="true" (
set CMD=%CMD% --comments
)
if "%INCLUDE_CLOSED%"=="true" (
set CMD=%CMD% --closed
)
:: Führe das Skript aus
echo [%date% %time%] Führe Befehl aus: %CMD% >> "%LOG_FILE%"
%CMD% >> "%LOG_FILE%" 2>&1
if %ERRORLEVEL% EQU 0 (
echo [%date% %time%] Update erfolgreich abgeschlossen >> "%LOG_FILE%"
) else (
echo [%date% %time%] FEHLER: Update fehlgeschlagen mit Exit-Code %ERRORLEVEL% >> "%LOG_FILE%"
)
echo [%date% %time%] Update beendet >> "%LOG_FILE%"
echo ================================================== >> "%LOG_FILE%"
:: Ausgabe auf der Konsole, wenn manuell ausgeführt
echo Forgejo Issues Update abgeschlossen.
echo Siehe Logdatei für Details: %LOG_FILE%