Rudel
Okolja WordPress, izbrana glede na zahtevo, kot prekrivne plasti za peskovnike.
composer require rudel/rudelNajnovejša izdaja v0.10.0 GPL-2.0-or-later WordPress 6.4+, PHP 8.2+
wp rudel create \
--name=feature-a \
--owner=dennis \
--labels=agent,qa \
--purpose="Test checkout changes" \
--ttl-days=7V praksi
Ustvarite peskovnik iz gostiteljske strani in vanj usmerite WP-CLI ali zahtevo HTTP.
Ustvarite peskovnik in vanj usmerite zahtevo
wp rudel create klonira gostiteljske tabele pod novo predpono, kopira temo v imenik peskovnika in izpiše ID peskovnika.
Ta ID podajte v RUDEL_ENVIRONMENT za WP-CLI ali v glavi X-Rudel-Environment oziroma piškotku rudel_environment za HTTP. Ukaz PHP API ustvari isti peskovnik z metapodatki življenjskega cikla.
wp rudel create --name=alpha --theme=twentytwentyfour
RUDEL_ENVIRONMENT=alpha-1234 wp option get siteurl
curl -H 'X-Rudel-Environment: alpha-1234' http://localhost:8000/$sandbox = Rudel::create( 'alpha', [
'theme' => 'twentytwentyfour',
'owner' => 'dennis',
'labels' => [ 'qa', 'agent' ],
'ttl_days' => 7,
] );Peskovniki
Začasna prekrivna okolja za razvoj, testiranje in agente umetne inteligence.
Izbira glede na zahtevo
Zahtevo usmerite v peskovnik z glavo X-Rudel-Environment, piškotkom rudel_environment ali z RUDEL_ENVIRONMENT v WP-CLI. Izbira temelji samo na ID-ju peskovnika, brez preverjanja pristnosti.
Izvajalno okolje s prekrivnimi plastmi
Ob aktivaciji se v wp-config.php doda vrstica za zagon. Vsak peskovnik nato dobi klonirane tabele pod svojo predpono in kopijo aktivne teme; jedro WordPress, datoteke vtičnikov ter naložene datoteke ostanejo v skupni rabi.
Delovna drevesa Git
Vgrajeni tokovi za kloniranje, pošiljanje in upravljanje delovnih dreves PHP, izvorno podprti z Git, ne potrebujejo gostiteljske binarne datoteke git.
Posnetki
Poimenovane obnovitvene točke, ki kopirajo tabele peskovnika in upravljane datoteke teme. Ustvarite jih in obnovite iz WP-CLI ali PHP.
Izolacija zahtev
Predpone tabel za posamezno zahtevo, korenske mape tem, začasni imenik, sol za ključ predpomnilnika objektov in blokiranje e-pošte.
WP-CLI & PHP API
Ukazi wp rudel in statične metode Rudel\Rudel omogočajo ustvarjanje, prikaz, posodabljanje, snemanje, obnavljanje in uničenje peskovnikov.
Pripravljeno za agente
Agentom za pisanje kode omogoča začasno kopijo WordPress, pri čemer je WP-CLI omejen z RUDEL_ENVIRONMENT, odhodna e-pošta pa blokirana.
Zakaj Rudel
Ena namestitev, veliko peskovnikov
Rudel deluje znotraj običajne namestitve WordPress, brez večmestne uporabe in brez druge namestitve WordPress. Gostiteljska stran še naprej vsem zahtevam, ki ne določajo peskovnika, posreduje lastne podatke.
Kopira tabele in eno temo
Peskovnik dobi kopijo gostiteljskih tabel, vključno z uporabniki, pod svojo predpono, ter kopijo aktivne teme in pri podrejeni temi tudi njene nadrejene teme. Jedro WordPress, datoteke vtičnikov in naložene datoteke ostanejo na gostitelju.
Peskovniki z rokom veljavnosti
Peskovniku dodelite lastnika, oznake, namen in TTL v dnevih. urno opravilo WP-Cron odstrani pretečene peskovnike in preskoči tiste, ki so označeni kot zaščiteni.
Varno za predogled
Zahteve v peskovniku blokirajo odhodno e-pošto in zabeležijo vsako blokirano sporočilo. Če wp-config.php ne nastavi svoje vrednosti, se sol ključa predpomnilnika objektov izpelje iz ID-ja peskovnika, tako da trajni predpomnilniki ločijo gostiteljske in peskovniške ključe.
V primerjavi z
Rudel deluje znotraj strani, ki jo že upravljate. Ta orodja pokrivajo sorodne potrebe.
| Orodje | Primerno za | Razlika v primerjavi z Rudel |
|---|---|---|
| WordPress Multisite | Primerno zaNa enem naboru datotek jedra izvaja omrežje navideznih strani s skupnimi vtičniki in temami ter ločenimi tabelami zbirke podatkov in imeniki naloženih datotek za vsako stran. | Razlika v primerjavi z RudelRudel ne potrebuje večmestne namestitve. Peskovnik je kopija tabel in aktivne teme obstoječe strani; izbere se za posamezno zahtevo z glavo, piškotkom ali spremenljivko okolja WP-CLI. |
| wp-env | Primerno zaVzpostavi lokalno stran WordPress z Docker za izdelavo in testiranje vtičnikov ter tem brez dodatne konfiguracije. | Razlika v primerjavi z RudelRudel ne potrebuje druge namestitve WordPress. Peskovnike ustvari iz vsebine strani, ki jo že upravljate, njihove tabele pa so v isti zbirki podatkov MySQL kot gostiteljske. Peskovniku ne dodeli lastnega izvajalnega okolja PHP ali strežnika zbirke podatkov. |
| WordPress Playground | Primerno zaIzvaja WordPress na strani odjemalca v WebAssembly, brez zalednega sistema, izolirano v brskalniku in brez trajnih stranskih učinkov zunaj njega. | Razlika v primerjavi z RudelRudel deluje na strežniku ob pravi strani in njeni zbirki podatkov MySQL. Peskovnik izhaja iz trenutne vsebine te strani in je dostopen prek WP-CLI ter iz katerega koli odjemalca HTTP. |
Vprašanja in odgovori
Kratki odgovori iz dokumentacije za Rudel.
Jedro WordPress, datoteke vtičnikov in naložena predstavnost. Vsak peskovnik dobi svojo kopijo tabel zbirke podatkov, vključno z uporabniki, pod ustvarjeno predpono in svojo kopijo aktivne teme.
Zahtevi HTTP pošljite glavo X-Rudel-Environment ali piškotek rudel_environment oziroma za WP-CLI nastavite RUDEL_ENVIRONMENT. Rudel sprejme ID od katerega koli odjemalca, zato izbira ni nadzor dostopa.
Ne. Zahteve v peskovniku ustavijo odhodno e-pošto prek filtra pre_wp_mail in zabeležijo prejemnika ter zadevo vsakega blokiranega sporočila.
V dveh tabelah v gostiteljski zbirki podatkov: wp_rudel_environments in wp_rudel_worktrees s privzeto predpono. Konfiguracije izvajalnega okolja JSON ni, prav tako ni shrambe SQLite.
Ob aktivaciji se ustvarijo tabele izvajalnega okolja, v wp-config.php se doda vrstica za zagon in načrtuje dogodek čiščenja, zato mora imeti WordPress takrat dovoljenje za pisanje v wp-config.php. Ob deaktivaciji se vrstica znova odstrani.
Da. wp rudel snapshot shrani tabele peskovnika in njegove datoteke teme pod določenim imenom, wp rudel restore z --snapshot pa jih obnovi.
Namestite vtičnik, ustvarite peskovnik na svoji strani in vanj pošljite prvo zahtevo s pomočjo vodnika za začetek.