Creare
Creare de pe gazdă
wp rudel create --name=alpha --theme=twentytwentyfour
Rudel generează un ID din nume și patru caractere hexazecimale (de exemplu alpha-3be7), clonează tabelele gazdei WordPress într-un prefix de tabel generat, copiază tema selectată în directorul sandboxului și înregistrează sandboxul în baza de date WordPress a gazdei. siteurl și home ale sandboxului păstrează URL gazdei.
Dacă se omite --theme, Rudel folosește tema activă a site-ului gazdă. Tema trebuie să fie instalată pe gazdă. O temă copil o include și pe tema părinte.
Se copiază fiecare tabel cu prefixul de tabel al gazdei, inclusiv users și usermeta, cu excepția propriilor tabele ale Rudel. În versiunea actuală sunt incluse și tabelele sandboxurilor existente, astfel că fiecare sandbox nou este mai mare decât precedentul. Consultați problema #3.
Creare dintr-un alt sandbox
wp rudel create --name=feature-b --clone-from=alpha-3be7
Noul sandbox primește o copie a fiecărui tabel cu prefixul sandboxului sursă, inclusiv tabelele de instantanee ale sursei, precum și tema acesteia. Directoarele instantaneelor nu sunt copiate, așadar acele tabele nu sunt folosite în noul sandbox (problema #12). Dacă directorul temei sursă este un depozit Git, Rudel creează un worktree asociat pe ramura rudel/{new-id} în locul unei copii simple. ID-ul sursei este înregistrat în noua înregistrare.
Metadate ale ciclului de viață
Sandboxurile pot avea metadate pentru curățare și proprietate:
wp rudel create \
--name=feature-a \
--owner=dennis \
--labels=agent,qa \
--purpose="Test checkout changes" \
--ttl-days=7
Folosiți --protected când curățarea automată nu trebuie să elimine sandboxul. Consultați Politică.
Limite
Crearea eșuează când se ating setările max_sandboxes sau max_disk_mb. Valoarea implicită pentru ambele este 0, adică fără limită. Consultați Configurare.
Copii de lucru Git
wp rudel create --name=feature-a --git=https://example.test/my-theme.git
Rudel creează sandboxul, clonează depozitul la distanță în themes/my-theme în directorul sandboxului și trece copia de lucru pe ramura rudel/{id}. Adăugați --type=plugin pentru a clona în plugins/my-theme în schimb. O clonare eșuată lasă sandboxul creat și afișează un avertisment. Consultați Git pentru a afla ce servește sandboxul din acea copie de lucru.
Structura directoarelor
wp-content/rudel-environments/{id}/
themes/ copied theme, plus any Git checkout
snapshots/ snapshot metadata and theme copies
logs/ metadata/ tmp/
wp-cli.yml
debug.log when debug logging is active