Einführung
Rudel erstellt kurzlebige WordPress-Sandboxes innerhalb einer einzigen WordPress-Installation.
Jede Sandbox wird pro Anfrage ausgewählt. Die ausgewählte Anfrage verwendet die geklonten Tabellen von WordPress und eine Kopie des aktiven Themes; WordPress-Core, Plugin-Dateien und Uploads werden weiterhin gemeinsam mit dem Host genutzt.
Was eine Sandbox enthält
- eine Kopie der Host-Tabellen einschließlich Nutzern und Nutzermetadaten unter einem generierten Tabellenpräfix
- eine Kopie eines Themes (bei einem Child-Theme auch des Parent-Themes) im Sandbox-Verzeichnis
- Lebenszyklus-Metadaten in den MySQL-Tabellen des Hosts WordPress
Nutzer werden beim Erstellen der Sandbox kopiert. Danach ändern sich Nutzer und Passwörter in der Sandbox unabhängig von denen auf dem Host.
Was gemeinsam genutzt wird
- WordPress-Core-Dateien
- Plugin-Dateien
- hochgeladene Mediendateien
Diese Abgrenzung ist beabsichtigt. Rudel bietet schnelle, pro Anfrage ausgewählte Sandboxes für Agents, QA, Experimente und riskante Änderungen – ohne Multisite oder eine zweite WordPress-Installation.
So wählt eine Anfrage eine Sandbox aus
Eine HTTP-Anfrage wählt eine Sandbox über den Header X-Rudel-Environment oder das Cookie rudel_environment aus; ein WP-CLI-Befehl verwendet die Umgebungsvariable RUDEL_ENVIRONMENT. Rudel authentifiziert die Auswahl nicht: Jeder Client, der eine gültige Sandbox-ID sendet, erhält Zugriff auf diese Sandbox. Siehe Isolation.
Maßgebliche Datenquelle
Rudel-Laufzeitdaten liegen in der Host-Datenbank WordPress:
wp_rudel_environmentswp_rudel_worktrees
Einstellungen liegen in der Option rudel_config. Es gibt keine Laufzeitkonfiguration JSON und keinen SQLite-Metadatenspeicher.