Deployment¶
Dieses Kapitel beschreibt das vollständige Deployment-System der easySale-Plattform.
-
Deployment-Gesamtkonzept
Artifact Promotion, Dev→Prod Stufenmodell, kompletter Flow -
GitHub Actions Setup
Keystores, iOS-Zertifikate, Secrets einrichten -
Firebase-Konfiguration
Single-Tenant Setup, Umgebungen, Konfigurationsdateien -
CORS-Konfiguration
CORS-Optimierungen für Firebase Storage und Cloud Functions -
Cloudflare Access
Zero-Trust-Authentifizierung für geschützte Dokumentation -
Secrets Management
Google Secret Manager, GitHub Secrets, Credential-Hygiene -
Monitoring & Backup
Full System Backup, GCS Object Versioning, Backup Health Monitoring
Deployment-Übersicht (Pull-Modell)¶
CORE-REPO
─────────
Code-Änderung auf main
│
▼
release:ship ← Erstellt release/x.y.z-Branch
(Version aus Conventional Commits)
│
│ [Branch Protection: PR + grüne CI Pflicht]
▼
release/x.y.z (permanent, Branches-only, keine Tags)
CLIENT-REPO (entscheidet selbst, wann er upgradet)
──────────
core:upgrade x.y.z ← Pin in pubspec aktualisieren via PR
│
▼
release:client ← Baut Web + Android + Firebase
und deployt nach Production
│
├── Web: Firebase Hosting + Rules + Functions
├── Android: Google Play Internal Track
└── (iOS getrennt: release:client --platforms=ios → TestFlight)
Vollständige Spezifikation: Release-Gesamtkonzept.
Environments¶
| Environment | Zweck | URL-Muster |
|---|---|---|
| Dev | Entwicklung & QA | <project-id>-dev.web.app |
| Prod | Live-Betrieb | <project-id>.web.app |
Jedes Client-Repo hat eigene Firebase-Projekte für Dev und Prod.