feat(frontend): Struktur und Kommentare verfeinert, Mail-Service-Konfiguration erweitert
Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
This commit is contained in:
@@ -0,0 +1,39 @@
|
||||
# 🧹 Session Journal - 15. April 2026 (Live-Gang Vorbereitung)
|
||||
|
||||
## 🏗️ Status-Check (Lead Architect)
|
||||
|
||||
- **Phase 13 (Export & Mail-Service):** Infrastruktur und Deployment-Vorbereitungen für den Live-Gang des Online-Nennens
|
||||
sind abgeschlossen.
|
||||
- **Ziel erreicht:** Das System kann nun auf dem Produktions-Server deployt werden.
|
||||
|
||||
## 👷 Durchgeführte Arbeiten (DevOps & Frontend)
|
||||
|
||||
1. **Infrastruktur (Docker):**
|
||||
- Dockerfile für `mail-service` erstellt.
|
||||
- `dc-backend.yaml` um den `mail-service` erweitert (inkl. Postgres-Link, Consul-Discovery und SMTP-Konfiguration).
|
||||
- `application.yaml` im `mail-service` für dynamische Konfiguration via Environment-Variablen fit gemacht.
|
||||
2. **Frontend (Konfigurierbarkeit):**
|
||||
- Common `PlatformConfig` erweitert um `resolveMailServiceUrl`.
|
||||
- Implementierung für Wasm, JS und JVM hinzugefügt, um Backend-URLs zur Laufzeit steuern zu können (Wasm: via global
|
||||
JS variables).
|
||||
- `NennungRemoteRepository` nutzt nun die dynamisch aufgelöste Mail-Service-URL.
|
||||
- Fehlende Projekt-Abhängigkeit (`frontend.core.network`) im `nennung-feature` ergänzt.
|
||||
3. **Sicherheit:**
|
||||
- CORS im `MailController` auf Ziel-Domains eingeschränkt (`nennung.mo-code.at`).
|
||||
- Bean-Validierung für `NennungRequest` (Email-Format, Pflichtfelder) implementiert.
|
||||
4. **Dokumentation:**
|
||||
- `docs/05_Deployment/2026-04-15_Online-Nennung-Deployment.md` erstellt.
|
||||
|
||||
## 🧐 QA-Status & Bekannte Themen
|
||||
|
||||
- [x] **Infrastruktur-Check:** Docker-Stack ist bereit für `up -d mail-service`.
|
||||
- [x] **Frontend-URL:** Die harte Verdrahtung auf `localhost:8085` wurde durch eine flexible Runtime-Konfiguration
|
||||
ersetzt.
|
||||
- [ ] **Mail-Versand:** Der tatsächliche Versand muss in der Ziel-Umgebung mit echten SMTP-Credentials validiert werden.
|
||||
|
||||
## 🧹 Curator's Note
|
||||
|
||||
- Die ROADMAP Phase 13 wurde in der Vormittags-Session bereits aktualisiert.
|
||||
- Das "Biest" ist nun technologisch "Live-ready". 🚀
|
||||
|
||||
**Abschluss:** Online-Nennung bereit für das Neumarkt-Turnier (April 2026). 🐎
|
||||
@@ -0,0 +1,70 @@
|
||||
# 🚀 Deployment Guide - Online-Nennung (Neumarkt 2026)
|
||||
|
||||
Dieser Guide beschreibt den Prozess zum Deployment des "Biest" Online-Nennung Stacks auf den Produktions-Server.
|
||||
|
||||
## 1. Voraussetzungen
|
||||
|
||||
- Docker & Docker Compose installiert.
|
||||
- Zugriff auf den OEPS SMTP Server oder eine Alternative.
|
||||
- Domain (z.B. `nennung.mo-code.at`) zeigt auf den Server.
|
||||
|
||||
## 2. Infrastruktur (Backend)
|
||||
|
||||
Der Stack wird über `dc-backend.yaml` gestartet.
|
||||
|
||||
### Umgebungsvariablen (`.env` Datei am Server)
|
||||
|
||||
Folgende Variablen müssen gesetzt sein:
|
||||
|
||||
```env
|
||||
# Datenbank
|
||||
POSTGRES_USER=pg-user
|
||||
POSTGRES_PASSWORD=dein-geheimes-passwort
|
||||
|
||||
# SMTP (für Bestätigungs-Mails)
|
||||
MAIL_SMTP_HOST=smtp.mo-code.at
|
||||
MAIL_SMTP_PORT=587
|
||||
MAIL_SMTP_USER=online-nennen@mo-code.at
|
||||
MAIL_SMTP_PASSWORD=dein-smtp-passwort
|
||||
```
|
||||
|
||||
### Starten
|
||||
|
||||
```bash
|
||||
docker-compose -f dc-backend.yaml up -d mail-service postgres consul
|
||||
```
|
||||
|
||||
## 3. Frontend (Wasm Web App)
|
||||
|
||||
Die Web-App kommuniziert direkt mit dem `mail-service`.
|
||||
|
||||
### Build
|
||||
|
||||
```bash
|
||||
./gradlew :frontend:shells:meldestelle-web:wasmJsBrowserDistribution
|
||||
```
|
||||
|
||||
Die Artefakte liegen in `frontend/shells/meldestelle-web/build/dist/wasmJs/productionExecutable/`.
|
||||
|
||||
### Konfiguration (Laufzeit)
|
||||
|
||||
In der `index.html` oder über ein vorgeschaltetes Nginx können globale Variablen gesetzt werden, um die Backend-URLs zu
|
||||
steuern:
|
||||
|
||||
```html
|
||||
|
||||
<script>
|
||||
window.MAIL_SERVICE_URL = "https://nennung.mo-code.at/api/mail";
|
||||
window.API_BASE_URL = "https://nennung.mo-code.at/api";
|
||||
</script>
|
||||
```
|
||||
|
||||
## 4. Sicherheit & Härtung
|
||||
|
||||
- **CORS:** Der `MailController` ist aktuell für `localhost:8080` und `nennung.mo-code.at` freigeschaltet.
|
||||
- **Reverse Proxy:** Es wird empfohlen, einen Nginx oder Traefik mit SSL (Let's Encrypt) vor den Stack zu schalten.
|
||||
- **Mail-Absender:** Die Absender-Adresse ist im `MailController` hartcodiert auf `online-nennen@mo-code.at`. Dies
|
||||
sollte bei Bedarf angepasst werden.
|
||||
|
||||
---
|
||||
*Dokumentiert durch den Lead Architect am 15. April 2026.*
|
||||
Reference in New Issue
Block a user