59 lines
No EOL
1.8 KiB
Batchfile
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% |