Luominen
Luo isännästä
wp rudel create --name=alpha --theme=twentytwentyfour
Rudel luo nimestä ja neljästä heksamerkistä muodostuvan tunnuksen (esimerkiksi alpha-3be7), kloonaa isännän WordPress-taulut luotuun taulujen etuliitteeseen, kopioi valitun teeman eristysympäristön hakemistoon ja tallentaa eristysympäristön tiedot isännän WordPress-tietokantaan. Eristysympäristön siteurl ja home säilyttävät isännän arvon URL.
Jos --theme jätetään pois, Rudel käyttää isäntäsivuston aktiivista teemaa. Teeman on oltava asennettuna isännälle. Alateeman mukana tuodaan myös sen yläteema.
Kaikki isännän taulujen etuliitettä käyttävät taulut kopioidaan, mukaan lukien users ja usermeta, paitsi Rudel omat taulut. Nykyisessä julkaisussa tähän sisältyvät myös jo olemassa olevien eristysympäristöjen taulut, joten jokainen uusi eristysympäristö on edellistä suurempi. Katso ongelma #3.
Luo toisesta eristysympäristöstä
wp rudel create --name=feature-b --clone-from=alpha-3be7
Uusi eristysympäristö saa kopion kaikista lähdeympäristön etuliitettä käyttävistä tauluista, mukaan lukien lähteen tilannevedostaulut, sekä sen teeman. Tilannevedoshakemistoja ei kopioida, joten kyseiset taulut jäävät uudessa eristysympäristössä käyttämättömiksi (ongelma #12). Kun lähteen teeman hakemisto on Git-tietovarasto, Rudel luo linkitetyn työpuun haaralle rudel/{new-id} tavallisen kopion sijaan. Lähteen tunnus tallennetaan uuteen tietueeseen.
Elinkaaren metatiedot
Eristysympäristöihin voidaan liittää siivoukseen ja omistajuuteen liittyviä metatietoja:
wp rudel create \
--name=feature-a \
--owner=dennis \
--labels=agent,qa \
--purpose="Test checkout changes" \
--ttl-days=7
Käytä arvoa --protected, kun automaattinen siivous ei saa poistaa eristysympäristöä. Katso Käytäntö.
Rajat
Luonti epäonnistuu, kun asetus max_sandboxes tai max_disk_mb saavuttaa rajansa. Molempien oletusarvo on 0, mikä tarkoittaa, ettei rajaa ole. Katso Määritykset.
Git-checkoutit
wp rudel create --name=feature-a --git=https://example.test/my-theme.git
Rudel luo eristysympäristön, kloonaa etätietovaraston hakemistoon themes/my-theme eristysympäristön sisälle ja vaihtaa checkoutin haaralle rudel/{id}. Lisää --type=plugin kloonataksesi kohteeseen plugins/my-theme. Epäonnistunut kloonaus jättää eristysympäristön paikalleen ja tulostaa varoituksen. Katso kohdasta Git, mitä eristysympäristö tarjoaa kyseisestä checkoutista.
Hakemistorakenne
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