Files
axion1337.chat-gitops/apps/production/element-server-suite.yaml
T
Thore Cimbal d87c432f89 elementWeb auf v0.6.0
Release des Upstream-Anschlusses (ADR-0022). Gleicher Quellstand wie rc.3
(8ca03fe), das die Abnahme bestanden hat - nur unter Release-Nummer. Die Images
sind nicht bitgleich, weil der Build die Versionszeichenkette aus git describe
ins Artefakt backt.

Produktion laeuft damit erstmals auf einem Fork, der wieder an der
Upstream-Historie haengt.

Rueckhebel: Tag zurueck auf v0.5.4.
2026-08-19 12:00:00 +00:00

163 lines
7.4 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: matrix-stack
namespace: matrix
spec:
# Shortened from 5m to match production-apps Kustomization's 1m interval - narrows the
# window between coturn (Kustomization-only, no Helm indirection) and synapse-main
# (behind this HelmRelease) picking up a rotated TURN secret after Issue #38's
# automated-rotation PR gets merged. Self-heals either way, just faster now.
interval: 1m
chart:
spec:
chart: matrix-stack
version: "26.4.0"
sourceRef:
kind: HelmRepository
name: element-ess-oci
namespace: flux-system
# NEU: Hier zieht Flux deine Puzzleteile zusammen
valuesFrom:
- kind: ConfigMap
name: ess-synapse-custom
valuesKey: values.yaml
- kind: ConfigMap
name: ess-element-custom
valuesKey: values.yaml
- kind: Secret
name: ess-mas-values-secret
valuesKey: values.yaml
- kind: Secret
name: synapse-turn-secret
valuesKey: values.yaml
values:
# Top-Level: serverName das ist dein Matrix-Homeserver-Name
serverName: axion1337.chat
# Cert-Manager für automatische Zertifikatsgenerierung
certManager:
clusterIssuer: letsencrypt-prod
# Interner Postgres an (default ist eh true, hier nur zur Klarheit)
postgres:
enabled: true
# Synapse API auf matrix.axion1337.chat
synapse:
enabled: true
ingress:
host: matrix.axion1337.chat
additional:
oembed:
config: |
oembed_enabled: true
# Matrix Authentication Service braucht eine Subdomain
matrixAuthenticationService:
enabled: true
ingress:
host: account.axion1337.chat
# Matrix RTC (Element Call) braucht auch eine Subdomain
matrixRTC:
enabled: true
ingress:
host: mrtc.axion1337.chat
# Chart default (20Mi request+limit) OOM-killed the authorisation service after
# ~74 days of uptime (2026-07-28) - too tight for a long-running Go service.
resources:
requests:
memory: 64Mi
cpu: 50m
limits:
memory: 128Mi
# Element Web
elementWeb:
enabled: true
image:
registry: rohana.axion1337.de
repository: sorb/threadnet-web
# v0.6.0-rc.2 = Anschluss an Element Web v1.12.26 (ADR-0022). Ein echter
# Merge-Commit statt Cherry-Picks; die Fork-Patches mussten umziehen,
# weil Upstream MImageBody.tsx geloescht und den Raumlisten-Inhalt nach
# RoomListItemContent ausgelagert hat. Betroffen sind genau die zwei
# Stellen, die die Abnahme pruefen muss: die ClamAV-Fehlermeldung im
# Bild-Pfad (ImageBodyViewModel.computeErrorLabel) und die
# Call-Teilnehmerliste in der Raumliste.
# Am 19.08. ausgerollt und nach wenigen Minuten zurueckgenommen: die
# Raumliste stuerzte bei jedem Eintrag ab (react-soft-crash), weil in
# RoomListItemViewModel.ts eine getValue-Zeile auf den von Upstream
# entfernten Labs-Schalter feature_room_list_sections stehenblieb -
# Sektionen laufen dort inzwischen ueber RoomList.showSections. Eine
# Leiche aus der Merge-Aufloesung, die kein Build fangen konnte:
# getValue nimmt einen String und wirft erst zur Laufzeit.
# rc.3 = derselbe Merge ohne den Rest, plus ein typecheck-Job, den
# docker_web als needs fuehrt: kein Image mehr ohne Typpruefung. Der
# web-Job baut nur, webpack wirft Typen weg - tsc hatte den Fehler die
# ganze Zeit gemeldet, gefragt hatte ihn niemand. Massstab ist "kein
# Fehler ausserhalb von node_modules", weil Upstream v1.12.26 selbst
# nicht typrein ist (matrix-js-sdk 42.2.0, in einem sauberen Checkout
# gegengeprueft).
# v0.6.0 = Abnahme auf rc.3 bestanden (19.08.), derselbe Quellstand
# 8ca03fe unter Release-Nummer. Geprueft am laufenden System, nicht nur
# am Build: Raumliste laedt, ClamAV blockt beim Senden (ein Scan-Aufruf,
# kein Upload), abgewiesene Datei zeigt die Meldung, und das .png wurde
# zugestellt, beim Herunterladen abgewiesen und die Meldung gerendert -
# damit ist der portierte Bild-Pfad belegt, nicht nur vermutet. Auch die
# Call-Teilnehmerliste, der zweite umgezogene Patch, steht richtig drin.
# Rueckhebel bleibt der Tag-Revert auf v0.5.4.
# v0.5.4 = Sender-Verifikation (threadnet-call fee9866): auf Safari
# uebersprang LiveKit den Track-Tausch stumm (sender?.replaceTrack),
# das rohe Mikro blieb auf der Leitung. Der Fork prueft und erzwingt
# den Tausch jetzt; die Konsole weist den Sendepfad aus.
# v0.5.3 = KI-Geraeuschunterdrueckung freigeschaltet (threadnet-call
# e3f8a85): Abnahme im Call zu zweit bestanden 2026-08-17. Checkbox +
# Regler in den Call-Einstellungen (Audio-Reiter). Rueckhebel bei
# Regression: Feature-Tor im Fork schliessen, kein Deployment-Revert.
# v0.5.2 = KI-Filter-Anbindung Weg B (threadnet-call df4e5ee): Filter
# haengt sich NACH der Publikation an den Mikrofon-Track, eigener
# AudioContext nur dort - kein webAudioMix, kein processor-Schluessel in
# den Capture-Defaults in irgendeinem Zustand. Tor geschlossen: fuer
# alle Nutzer verhaltensgleich mit v0.5.1; Test-Client per zwei
# localStorage-Schluesseln. Tor-Oeffnung erst nach Abnahme im Call.
# v0.5.1 = Entmuten-Vorfall aus v0.5.0 behoben (threadnet-call dcc8643):
# Aus-Pfad der KI-Geraeuschunterdrueckung wieder identisch mit Upstream
# (kein processor-Schluessel), Feature hart stillgelegt bis zur
# webAudioMix-Entscheidung - neutralisiert auch Clients mit noch
# aktivierter Einstellung im localStorage. Regressionstests decken beide
# Faelle ab. Abnahme: Call zu zweit nach dem Rollout.
# Historie 2026-08-16: v0.5.0 brach das Entmuten beidseitig und wurde v0.5.0 brach das Entmuten - es wurde nie ein
# Audio-Track veroeffentlicht (SFU-Log: kein einziges "published"). Erstes
# Produktivimage mit dem KI-Filter im Audio-Pfad; v0.4.3 (embedded .7) ist
# der letzte Stand, mit dem Calls nachweislich liefen (09.-11.08.).
# Ursache offen - siehe #0054. NICHT wieder anheben ohne Call-Test zu zweit.
# v0.5.0 = KI-Geraeuschunterdrueckung im Call-Widget (ADR-0018): erste
# Funktionserweiterung seit dem Rebrand, daher Minor statt Patch. Das
# Image traegt jetzt 23 MB Modell-Assets unter
# /widgets/element-call/assets/dfn3/ - sie werden erst beim Einschalten
# des Filters geladen, nicht beim Seitenaufruf.
# v0.4.0 = Rebrand sichtbar: zentrierte Icons, Markenfarbe #ed4f4c,
# About-Attribution unter der Client-Version (ThreadNet-Web#10).
# Die Linie beginnt bei v0.3.0, dem ersten kanonischen CI-Build aus
# apps/web/Dockerfile - er loeste die Derivat-Images ab, deren
# Entrypoint ohne Exec-Bit /config.json still brach (ThreadNet-Web#8).
tag: v0.6.0
ingress:
host: axion1337.chat
# Element Admin
elementAdmin:
enabled: true
ingress:
host: admin.axion1337.chat
# Well-Known auf der Apex-Domain (axion1337.chat/.well-known/matrix/*)
# Aktiviert notwendig für MatrixRTC-Discovery
wellKnownDelegation:
enabled: true
ingress:
className: "none" # Deaktiviert den Chart-Ingress, wir erstellen einen eigenen