Introduktion
Rudel opretter midlertidige WordPress-sandboxes i én værtsinstallation af WordPress.
Hver sandbox vælges pr. anmodning. Den valgte anmodning bruger sandboxens klonede WordPress-tabeller og kopi af det aktive tema, mens WordPresss kerne, pluginfiler og uploads deles med værten.
Hvad en sandbox indeholder
- en kopi af værtens tabeller, inklusive brugere og brugermetadata, under et genereret tabelpræfiks
- en kopi af ét tema (samt dets overordnede tema, hvis det er et undertema) i sandboxmappen
- livscyklusmetadata i værtens WordPress-MySQL-tabeller
Brugere kopieres, når sandboxen oprettes. Derefter ændres brugere og adgangskoder i sandboxen og på værten uafhængigt af hinanden.
Hvad der deles
- WordPresss kernefiler
- pluginfiler
- uploadede mediefiler
Denne grænse er tilsigtet. Rudel fokuserer på hurtige sandboxes, der vælges pr. anmodning, til agenter, kvalitetssikring, eksperimenter og risikable ændringer uden krav om multisite eller en ekstra WordPress-installation.
Sådan vælger en anmodning en sandbox
En HTTP-anmodning vælger en sandbox med headeren X-Rudel-Environment eller cookien rudel_environment; en WP-CLI-kommando bruger miljøvariablen RUDEL_ENVIRONMENT. Rudel godkender ikke valget: enhver klient, der sender et gyldigt sandbox-id, får adgang til den sandbox. Se Isolation.
Kilde til sandheden
Rudels runtime-poster ligger i værtens WordPress-database:
wp_rudel_environmentswp_rudel_worktrees
Indstillingerne ligger i indstillingen rudel_config. Der findes ingen runtime-JSON-konfiguration og intet SQLite-metadatalager.