Maintenance Mode
Der Maintenance Mode ermöglicht es, ein Product Deployment gezielt in den Wartungsmodus zu versetzen. Dabei werden alle Container gestoppt und alle Child-Stacks erhalten den Operation Mode „Maintenance”. So können Wartungsarbeiten wie Datenbank-Migrationen, Hardware-Updates oder geplante Downtimes sicher durchgeführt werden. Das Trigger-System stellt sicher, dass manuell aktivierter Maintenance nicht versehentlich durch den Observer aufgehoben wird.
Übersicht
Abschnitt betitelt „Übersicht“| Aspekt | Normal Mode | Maintenance Mode |
|---|---|---|
| Product Status | Running | Stopped |
| Stack Status | Running | Stopped |
| Operation Mode | Normal | Maintenance (propagiert auf alle Stacks) |
| Trigger | — | Manual oder Observer |
| Beenden | — | Nur durch den Trigger, der Maintenance aktiviert hat |
Trigger-Ownership
Abschnitt betitelt „Trigger-Ownership“Das zentrale Prinzip: Wer Maintenance aktiviert hat, kontrolliert auch das Ende.
- Manual Trigger: Maintenance wurde vom Benutzer über die UI oder API aktiviert. Nur der Benutzer kann Maintenance wieder beenden — der Observer hat keinen Einfluss.
- Observer Trigger: Maintenance wurde automatisch durch den Maintenance Observer aktiviert. Nur wenn der Observer wieder Normal meldet, wird Maintenance aufgehoben.
Schritt für Schritt: Maintenance Mode aktivieren
Abschnitt betitelt „Schritt für Schritt: Maintenance Mode aktivieren“Schritt 1: Product Deployment öffnen
Abschnitt betitelt „Schritt 1: Product Deployment öffnen“Navigieren Sie zur Product Deployment Detail-Seite. Im Normalzustand sehen Sie den Operation Mode: Normal in den Overview Cards und den Link Enter Maintenance in der Aktionsleiste.

Schritt 2: Bestätigungsseite prüfen
Abschnitt betitelt „Schritt 2: Bestätigungsseite prüfen“Klicken Sie auf Enter Maintenance. Sie werden zur Bestätigungsseite weitergeleitet, die Folgendes anzeigt:
- Produktname und Version
- Das Environment
- Alle betroffenen Stacks mit Service-Anzahl
- Eine Warnung, dass alle Container gestoppt werden
Prüfen Sie die betroffenen Stacks, bevor Sie bestätigen.

Schritt 3: Bestätigen und aktivieren
Abschnitt betitelt „Schritt 3: Bestätigen und aktivieren“Klicken Sie auf Enter Maintenance Mode um zu bestätigen. ReadyStackGo:
- Setzt den Product Operation Mode auf Maintenance
- Propagiert Maintenance auf alle Child-Stacks
- Stoppt alle Container
Nach erfolgreicher Aktivierung sehen Sie eine Erfolgsseite mit dem Mode-Übergang (Normal → Maintenance).

Schritt 4: Stacks während Maintenance
Abschnitt betitelt „Schritt 4: Stacks während Maintenance“Auf der Product Deployment Detail-Seite zeigen alle Stacks den Status Stopped während Maintenance. Der Product Status zeigt ebenfalls Stopped mit einem Maintenance Badge.

Schritt 5: Maintenance Mode beenden
Abschnitt betitelt „Schritt 5: Maintenance Mode beenden“Klicken Sie auf Exit Maintenance um zur Bestätigungsseite zu navigieren. Diese zeigt die aktuelle Maintenance-Info (Trigger-Quelle, Grund, Dauer) und die Stacks, die neu gestartet werden.
Klicken Sie auf Exit Maintenance Mode um zu bestätigen. ReadyStackGo startet alle Container neu und versetzt das Produkt zurück in den Normalbetrieb.

API-Endpoint
Abschnitt betitelt „API-Endpoint“Der Maintenance Mode kann auch über die REST API gesteuert werden:
PUT /api/environments/{environmentId}/product-deployments/{productDeploymentId}/operation-modeRequest Body
Abschnitt betitelt „Request Body“| Feld | Typ | Pflicht | Beschreibung |
|---|---|---|---|
mode | string | Ja | "Maintenance" oder "Normal" |
reason | string | Nein | Optionaler Grund für die Wartung |
Beispiele
Abschnitt betitelt „Beispiele“Maintenance aktivieren:
{ "mode": "Maintenance", "reason": "Scheduled database migration"}Maintenance beenden:
{ "mode": "Normal"}HTTP Status Codes
Abschnitt betitelt „HTTP Status Codes“| Code | Bedeutung |
|---|---|
| 200 | Modus erfolgreich geändert |
| 404 | Product Deployment nicht gefunden |
| 409 | Transition blockiert — Trigger-Ownership verletzt (z.B. manuelles Beenden von Observer-Maintenance) |
Fehlerbehandlung
Abschnitt betitelt „Fehlerbehandlung“| Situation | Verhalten |
|---|---|
| Manuelles Exit bei Observer-Maintenance | Blockiert mit HTTP 409 — Observer kontrolliert das Ende |
| Produkt bereits im gewünschten Modus | Keine Aktion, erfolgreiche Rückgabe (No-Op) |
| Observer meldet Normal bei manuellem Maintenance | Keine Aktion — manueller Trigger hat Vorrang |