[MEDIUM] ThreadNet-Web: Electron-Desktop-Build nicht automatisiert, Fork-Änderungen landen nicht dort #44

Closed
opened 2026-07-29 16:58:58 +00:00 by sorb · 5 comments
Owner

Beim Testen von Issue #19 (Client-seitiges Content-Scanning) aufgefallen: ThreadNet-Web
hat keinen laufenden Build-/Release-Prozess für den Electron-Desktop-Client.

Befund: .github/workflows/build-and-test.yaml hat zwar einen prepare_ed-Job, der
build_desktop_prepare.yaml mit webapp-artifact: webapp aufruft - würde also grundsätzlich
den selbst gebauten apps/web-Output (inkl. aller Fork-Anpassungen) ins Electron-Paket
übernehmen, statt das offizielle Upstream-Release zu fetchen (Standard-Fallback in
apps/desktop/scripts/fetch-package.ts). Der vorgelagerte build_ew-Job checkt aber
weiterhin explizit repository: element-hq/element-web aus - ein nicht an den Fork
angepasster Rest der ursprünglichen Upstream-CI. Zusätzlich: kein GitHub-Actions-Runner für
dieses Repo registriert (analog zu Issue #33 im gitops-Repo, dort aber für einen anderen
Workflow) - die Pipeline läuft also ohnehin nie automatisch.

Konsequenz: Die aktuell existierende Electron-Build (u.a. mit der Discord-Style-Raumliste)
entstand aus einem manuellen, lokalen Build-Vorgang, keinem reproduzierbaren Prozess. Neue
Fork-Änderungen (z.B. die client-seitigen ClamAV-Scan-Patches aus Issue #19, siehe
docs/deployment-guides/06-moderation-content-scanning.md im gitops-Repo) landen dadurch
nicht automatisch im Desktop-Client - nur im Web-Client (der direkt aus dem
apps/web-Container-Image läuft).

Vorschlag:

  1. build_ew-Job in build-and-test.yaml auf repository: ${{ github.repository }}
    umstellen (bzw. eigenen Fork-Namen), damit die Pipeline tatsächlich den Fork baut.
  2. Einen funktionierenden Runner registrieren (GitHub-gehostet oder self-hosted im Cluster),
    damit die Pipeline überhaupt läuft.
  3. Alternativ (schneller, aber manuell): dokumentierten, wiederholbaren lokalen Build-Prozess
    festhalten, bis 1+2 erledigt sind.
Beim Testen von Issue #19 (Client-seitiges Content-Scanning) aufgefallen: `ThreadNet-Web` hat keinen laufenden Build-/Release-Prozess für den Electron-Desktop-Client. **Befund**: `.github/workflows/build-and-test.yaml` hat zwar einen `prepare_ed`-Job, der `build_desktop_prepare.yaml` mit `webapp-artifact: webapp` aufruft - würde also grundsätzlich den selbst gebauten `apps/web`-Output (inkl. aller Fork-Anpassungen) ins Electron-Paket übernehmen, statt das offizielle Upstream-Release zu fetchen (Standard-Fallback in `apps/desktop/scripts/fetch-package.ts`). Der vorgelagerte `build_ew`-Job checkt aber weiterhin explizit `repository: element-hq/element-web` aus - ein nicht an den Fork angepasster Rest der ursprünglichen Upstream-CI. Zusätzlich: kein GitHub-Actions-Runner für dieses Repo registriert (analog zu Issue #33 im gitops-Repo, dort aber für einen anderen Workflow) - die Pipeline läuft also ohnehin nie automatisch. **Konsequenz**: Die aktuell existierende Electron-Build (u.a. mit der Discord-Style-Raumliste) entstand aus einem manuellen, lokalen Build-Vorgang, keinem reproduzierbaren Prozess. Neue Fork-Änderungen (z.B. die client-seitigen ClamAV-Scan-Patches aus Issue #19, siehe `docs/deployment-guides/06-moderation-content-scanning.md` im gitops-Repo) landen dadurch **nicht automatisch** im Desktop-Client - nur im Web-Client (der direkt aus dem `apps/web`-Container-Image läuft). **Vorschlag**: 1. `build_ew`-Job in `build-and-test.yaml` auf `repository: ${{ github.repository }}` umstellen (bzw. eigenen Fork-Namen), damit die Pipeline tatsächlich den Fork baut. 2. Einen funktionierenden Runner registrieren (GitHub-gehostet oder self-hosted im Cluster), damit die Pipeline überhaupt läuft. 3. Alternativ (schneller, aber manuell): dokumentierten, wiederholbaren lokalen Build-Prozess festhalten, bis 1+2 erledigt sind.
sorb added the priority:mediumarea:element labels 2026-07-29 16:58:58 +00:00
Author
Owner

Update 2026-07-29 - manuellen Build vorerst bereitgestellt, bis Automatisierung steht: Release desktop-v1.12.17-clientscan (Linux deb/tar.gz, enthält die Issue-#19-Client-Scan-Patches + den Fix für 9 weitere nicht-ausführbare Skripte in apps/desktop). Kein macOS-Build möglich ohne native Mac-Toolchain.

**Update 2026-07-29** - manuellen Build vorerst bereitgestellt, bis Automatisierung steht: [Release desktop-v1.12.17-clientscan](https://rohana.axion1337.de/sorb/ThreadNet-Web/releases/tag/desktop-v1.12.17-clientscan) (Linux deb/tar.gz, enthält die Issue-#19-Client-Scan-Patches + den Fix für 9 weitere nicht-ausführbare Skripte in apps/desktop). Kein macOS-Build möglich ohne native Mac-Toolchain.
Author
Owner

Update 2026-07-29 - richtig verortet als ThreadNet-Web#2, da die eigentliche CI/CD-Problematik im ThreadNet-Web-Repo selbst liegt, nicht hier im gitops-Repo. Dieses Issue bleibt als gitops-seitiger Verweis bestehen, die eigentliche Bearbeitung erfolgt drüben.

**Update 2026-07-29** - richtig verortet als [ThreadNet-Web#2](https://rohana.axion1337.de/sorb/ThreadNet-Web/issues/2), da die eigentliche CI/CD-Problematik im ThreadNet-Web-Repo selbst liegt, nicht hier im gitops-Repo. Dieses Issue bleibt als gitops-seitiger Verweis bestehen, die eigentliche Bearbeitung erfolgt drüben.
Author
Owner

Verwandt: Root-Ursache (kein Runner) jetzt zentral in #33 nachgehalten, inkl. Querverweis hierher und auf ThreadNet-Web#2. Sobald ein Runner existiert, kann dieses Issue vermutlich zusammen mit ThreadNet-Web#2 erledigt/geschlossen werden statt separat.

Verwandt: Root-Ursache (kein Runner) jetzt zentral in [#33](https://rohana.axion1337.de/sorb/axion1337.chat-gitops/issues/33) nachgehalten, inkl. Querverweis hierher und auf ThreadNet-Web#2. Sobald ein Runner existiert, kann dieses Issue vermutlich zusammen mit ThreadNet-Web#2 erledigt/geschlossen werden statt separat.
Author
Owner

Geschlossen als Duplikat von ThreadNet-Web#2, das jetzt den korrigierten, praezisen Stand traegt (Runner existiert bereits auf CFGMON, kein Blocker mehr - offen bleiben nur der deaktivierte Actions-Schalter und die hartcodierten Upstream-Checkouts). Die eigentliche Arbeit passiert in dem Repo, nicht hier - dieselbe Faustregel wie im Backlogs-Repo (Eintrag gehoert dorthin, wo die Arbeit stattfindet).

Geschlossen als Duplikat von [ThreadNet-Web#2](https://rohana.axion1337.de/sorb/ThreadNet-Web/issues/2), das jetzt den korrigierten, praezisen Stand traegt (Runner existiert bereits auf CFGMON, kein Blocker mehr - offen bleiben nur der deaktivierte Actions-Schalter und die hartcodierten Upstream-Checkouts). Die eigentliche Arbeit passiert in dem Repo, nicht hier - dieselbe Faustregel wie im Backlogs-Repo (Eintrag gehoert dorthin, wo die Arbeit stattfindet).
sorb closed this issue 2026-07-30 16:14:35 +00:00
Author
Owner

Migriert nach git.lab: axion1337.chat/axion1337.chat-gitops#43 (nur im Lab bzw. via VPN erreichbar — das Lab ist seit 2026-08-01 die Quelle der Wahrheit, siehe gitops#48). Weiterarbeit dort; dieses Gitea-Issue bleibt als Verweis stehen.

**Migriert nach git.lab**: [axion1337.chat/axion1337.chat-gitops#43](https://git.lab/axion1337.chat/axion1337.chat-gitops/-/issues/43) (nur im Lab bzw. via VPN erreichbar — das Lab ist seit 2026-08-01 die Quelle der Wahrheit, siehe gitops#48). Weiterarbeit dort; dieses Gitea-Issue bleibt als Verweis stehen.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sorb/axion1337.chat-gitops#44