Przejdź do głównej zawartości

Środowiska

Funkcja Środowiska zapewnia rozgałęzianie podobne do Git dla całego backendu. Każde środowisko to w pełni izolowana kopia aplikacji — w tym własna baza danych, schemat API, role, dostawcy plików, trasy gateway i konfiguracja bezpieczeństwa — umożliwiając rozwój, testowanie i przygotowywanie zmian bez wpływu na dane produkcyjne.

Każdy projekt zaczyna od jednego środowiska master. Stamtąd możesz tworzyć nowe środowiska dziedziczące schemat bazy danych (i opcjonalnie dane) z dowolnego istniejącego. Każda gałąź działa niezależnie: zmiany w jednym środowisku nie są propagowane do innych, dopóki nie wykonasz merge.


  • Izolacja środowisk: Każde środowisko ma własną bazę PostgreSQL, zapewniając pełną separację danych między gałęziami.
  • Tryby gałęzi: Przy tworzeniu nowego środowiska wybierasz między strategiami klonowania Full (schemat + dane) lub System (tylko schemat).
  • Kopiowanie konfiguracji: Dostawcy magazynu plików, trasy gateway, ustawienia bezpieczeństwa i zmienne środowiskowe mogą być opcjonalnie kopiowane ze środowiska źródłowego podczas rozgałęziania.
  • Cykl życia statusu: Środowiska przechodzą przez zdefiniowane stany — active, branching, merging, error i archived — aby zapobiec konfliktowym operacjom.
  • Relacje rodzic-dziecko: Środowiska zachowują strukturę drzewa śledzącą pochodzenie dla operacji diff i merge.
  • Schema Diff: Porównaj schematy bazy danych dowolnych dwóch środowisk używając semantyki diff tylko do przodu. Zobacz Environment Diff.
  • Merge: Zastosuj zmiany schematu z jednego środowiska do drugiego z automatyczną kopią zapasową, selektywnym stosowaniem zmian (cherry-pick) i transakcyjnym DDL. Zobacz Environment Merge.
  • Backupy: Automatyczne kopie przed merge i ręczne kopie zapisane w S3, z możliwością przywrócenia do dowolnego środowiska docelowego — w tym usuniętych. Zobacz Backups.
  • Historia migracji: Pełny ślad audytowy wszystkich operacji merge, w tym użytkownik, który zastosował każdą migrację, znacznik czasu i konkretne zmiany.

Wszystkie zasoby backendu są przypisane do aktualnie wybranego środowiska. Przy przełączaniu środowisk za pomocą Selektora środowisk w górnym pasku nawigacji następujące zasoby odzwierciedlają stan tego środowiska:

ZasóbZakres per środowisko
Tabele i schemat bazy danychTak
API Explorer (GraphQL)Tak
SQL PlaygroundTak
Dostęp oparty na rolachTak
Dostawcy magazynu plikówTak
Dostawcy uwierzytelnianiaTak
API KeysTak
Niestandardowe trasy API GatewayTak
Konfiguracja bezpieczeństwa (CORS, Rate Limits)Tak
Zmienne środowiskoweTak
IntegracjeTak

Uwaga: Przełączanie środowisk wyzwala pełne przeładowanie kontekstu. Kontekst environment jest propagowany przez wszystkie usługi backendu platformy, aby każdy request był rozwiązywany względem właściwej bazy danych i konfiguracji.


System środowisk zapewnia izolację klasy enterprise między etapami rozwoju:

  1. Izolacja magazynu: Każde środowisko ma dedykowaną bazę danych. Gwarantuje to, że błąd lub operacja danych w środowisku deweloperskim nigdy nie wpłynie na dane produkcyjne.
  2. Zakres konfiguracji: Wszystkie ustawienia — od API keys po polityki bezpieczeństwa — są zarządzane niezależnie per środowisko. Zmiana polityki CORS w “Staging” nie wpłynie na “Production”.
  3. Kontekst platformowy: Aktualne środowisko jest automatycznie propagowane przez całą platformę. Przeglądając pliki, uruchamiając zapytania SQL czy wykonując wywołania API, Archie Core zapewnia interakcję z zasobami właściwego środowiska.