CI: automatischer .exe-Build und Forgejo-Release bei Tag-Push #3

Merged
DasAoD merged 3 commits from feature/build-release-workflow into main 2026-08-18 15:39:24 +02:00
Owner

Änderungen

  • .forgejo/workflows/build-release.yml: Neuer Workflow, läuft auf dem self-hosted Runner mfbot-runner (Label windows-latest, Host mfbotbt.intern.uliana.de)
    • Trigger: Push eines Tags v*, oder manuell über "Run workflow"
    • Baut watchdog.exe per PyInstaller (pyinstaller watchdog.spec), Python ist auf mfbotbt bereits vorhanden (3.11.9) — kein actions/setup-python nötig
    • Legt automatisch den zum Tag passenden Forgejo-Release an (falls noch nicht vorhanden) und hängt Watchdog.exe als Asset an — ersetzt ein evtl. schon vorhandenes Asset gleichen Namens bei erneutem Tag-Push
    • Nutzt den eingebauten secrets.GITHUB_TOKEN, der auf dem eigenen (nicht-geforkten) Repo standardmäßig Schreibzugriff hat — keine manuelle Secret- oder Rechte-Konfiguration nötig
  • requirements.txt neu: psutil, sv-ttk — einheitliche Quelle für Runtime-Dependencies, die der Workflow installiert (und die du auch lokal für die Dev-Umgebung nutzen kannst: pip install -r requirements.txt)

Vorher zu prüfen

  • mfbotbt braucht Internetzugriff zu code.forgejo.org (Checkout-Mirror) und git.uliana.de
  • Runner muss online sein (aktuell laut Adminbereich der Fall)

Nicht getestet

Ich habe keinen Einblick in die Actions-Run-Logs (mein Forgejo-Token hat kein Admin-Scope) und kann den Workflow deshalb nicht selbst end-to-end verifizieren oder auslösen. Bitte nach dem Merge einmal manuell über "Run workflow" auslösen und mir das Ergebnis/die Logs zurückmelden, falls etwas fehlschlägt.

🤖 Generated with Claude Code

## Änderungen - `.forgejo/workflows/build-release.yml`: Neuer Workflow, läuft auf dem self-hosted Runner `mfbot-runner` (Label `windows-latest`, Host `mfbotbt.intern.uliana.de`) - Trigger: Push eines Tags `v*`, oder manuell über "Run workflow" - Baut `watchdog.exe` per PyInstaller (`pyinstaller watchdog.spec`), Python ist auf mfbotbt bereits vorhanden (3.11.9) — kein `actions/setup-python` nötig - Legt automatisch den zum Tag passenden Forgejo-Release an (falls noch nicht vorhanden) und hängt `Watchdog.exe` als Asset an — ersetzt ein evtl. schon vorhandenes Asset gleichen Namens bei erneutem Tag-Push - Nutzt den eingebauten `secrets.GITHUB_TOKEN`, der auf dem eigenen (nicht-geforkten) Repo standardmäßig Schreibzugriff hat — keine manuelle Secret- oder Rechte-Konfiguration nötig - `requirements.txt` neu: `psutil`, `sv-ttk` — einheitliche Quelle für Runtime-Dependencies, die der Workflow installiert (und die du auch lokal für die Dev-Umgebung nutzen kannst: `pip install -r requirements.txt`) ## Vorher zu prüfen - `mfbotbt` braucht Internetzugriff zu `code.forgejo.org` (Checkout-Mirror) und `git.uliana.de` - Runner muss online sein (aktuell laut Adminbereich der Fall) ## Nicht getestet Ich habe keinen Einblick in die Actions-Run-Logs (mein Forgejo-Token hat kein Admin-Scope) und kann den Workflow deshalb nicht selbst end-to-end verifizieren oder auslösen. Bitte nach dem Merge einmal manuell über "Run workflow" auslösen und mir das Ergebnis/die Logs zurückmelden, falls etwas fehlschlägt. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
- New workflow triggers on v* tag push (or manual dispatch), builds watchdog.exe via PyInstaller on the self-hosted mfbotbt Windows runner
- Automatically creates/updates the matching Forgejo release and uploads Watchdog.exe as its asset, replacing any existing asset of the same name
- Add requirements.txt (psutil, sv-ttk) so the workflow's dependency install step and local dev setups share one source of truth

Co-authored-by: Claude <claude@anthropic.com>
- Confirmed Python 3.11.9 is already installed and on PATH on mfbotbt, so fetching it via actions/setup-python is unnecessary
- Removes a dependency on github.com reachability from the runner

Co-authored-by: Claude <claude@anthropic.com>
- No repo settings toggle exists for this in Forgejo; the built-in token has write access on non-fork repos by default, confirmed against the vpn-ip-checker repo's existing successful runs and the Forgejo Actions docs

Co-authored-by: Claude <claude@anthropic.com>
DasAoD merged commit 40f1defa55 into main 2026-08-18 15:39:24 +02:00
DasAoD deleted branch feature/build-release-workflow 2026-08-18 15:39:24 +02:00
Sign in to join this conversation.
No description provided.