Zum Inhalt springen

Umgebungen

Die Funktion Umgebungen bietet Git-ähnliches Branching für dein gesamtes Backend. Jede Umgebung ist eine vollständig isolierte Kopie deiner Anwendung — inklusive eigener Datenbank, API-Schema, Rollen, Datei-Provider, Gateway-Routen und Sicherheitskonfiguration — sodass du Änderungen entwickeln, testen und vorbereiten kannst, ohne Produktionsdaten zu beeinträchtigen.

Jedes Projekt startet mit einer einzigen master-Umgebung. Von dort aus kannst du neue Umgebungen verzweigen, die das Datenbankschema (und optional Daten) von einer bestehenden Umgebung erben. Jeder Branch arbeitet unabhängig: Änderungen in einer Umgebung werden erst nach explizitem Merge in andere übertragen.


  • Umgebungsisolation: Jede Umgebung hat ihre eigene PostgreSQL-Datenbank für vollständige Datentrennung zwischen Branches.
  • Branch-Modi: Beim Erstellen einer neuen Umgebung wählst du zwischen Full (Schema + Daten) oder System (nur Schema) Klonstrategien.
  • Konfigurationskopie: Datei-Speicher-Provider, Gateway-Routen, Sicherheitseinstellungen und Umgebungsvariablen können optional beim Branching aus der Quellumgebung kopiert werden.
  • Status-Lebenszyklus: Umgebungen durchlaufen definierte Zustände — active, branching, merging, error, archived — um konfligierende Operationen zu verhindern.
  • Vater-Kind-Beziehungen: Umgebungen bilden eine Baumstruktur für Diff- und Merge-Operationen.
  • Schema Diff: Vergleiche Datenbankschemas zweier Umgebungen mit Forward-Only-Diff-Semantik. Siehe Environment Diff.
  • Merge: Wende Schemaänderungen von einer Umgebung auf eine andere an mit automatischem Backup, selektiver Änderungsanwendung (Cherry-Pick) und transaktionalem DDL. Siehe Environment Merge.
  • Backups: Automatische Pre-Merge-Backups und manuelle Backups in S3, mit Wiederherstellungsmöglichkeit in jede Zielumgebung — auch gelöschte. Siehe Backups.
  • Migrationshistorie: Vollständige Audit-Trail aller Merge-Operationen inkl. Benutzer, Zeitstempel und angewendete Änderungen.

Alle Backend-Ressourcen sind auf die aktuell gewählte Umgebung beschränkt. Beim Wechsel über den Umgebungs-Selector in der oberen Navigationsleiste spiegeln folgende Ressourcen den Zustand dieser Umgebung wider:

RessourcePro Umgebung
Datenbanktabellen & SchemaJa
API Explorer (GraphQL)Ja
SQL PlaygroundJa
Rollenbasierter ZugriffJa
Datei-Speicher-ProviderJa
Authentifizierungs-ProviderJa
API KeysJa
Custom API Gateway RoutenJa
Sicherheitsconfig (CORS, Rate Limits)Ja
UmgebungsvariablenJa
IntegrationenJa

Hinweis: Ein Umgebungswechsel löst einen vollständigen Kontext-Reload aus. Der environment-Kontext wird über alle Backend-Services propagiert.


Das Umgebungssystem bietet unternehmensweite Isolation zwischen Entwicklungsstufen:

  1. Speicherisolation: Jede Umgebung hat eine dedizierte Datenbank. Fehler oder Datenoperationen in einer Entwicklungsumgebung können Produktionsdaten nie beeinträchtigen.
  2. Konfigurationsscoping: Alle Einstellungen — von API Keys bis Sicherheitsrichtlinien — werden pro Umgebung unabhängig verwaltet.
  3. Plattformweiter Kontext: Die aktuelle Umgebung wird automatisch über die gesamte Plattform propagiert.