Oprettelse
Opret fra værten
wp rudel create --name=alpha --theme=twentytwentyfour
Rudel genererer et id ud fra navnet plus fire hexadecimale tegn (for eksempel alpha-3be7), kloner værtens WordPress-tabeller til et genereret tabelpræfiks, kopierer det valgte tema til sandboxmappen og registrerer sandboxen i værtens WordPress-database. Sandboxens siteurl og home beholder værtens URL.
Hvis --theme udelades, bruger Rudel webstedets aktive tema. Temaet skal være installeret på værten. Et undertema medfører også dets overordnede tema.
Hver tabel med værtens tabelpræfiks kopieres, herunder users og usermeta, bortset fra Rudels egne tabeller. I den aktuelle version omfatter det også tabellerne fra eksisterende sandkasser, så hver ny sandkasse er større end den forrige. Se issue #3.
Opret fra en anden sandkasse
wp rudel create --name=feature-b --clone-from=alpha-3be7
Den nye sandkasse får en kopi af alle tabeller med kildesandkassens præfiks, herunder kildens snapshot-tabeller, samt dens tema. Snapshot-mapper kopieres ikke, så disse tabeller bruges ikke i den nye sandkasse (issue #12). Når kildens temamappe er et Git-repository, opretter Rudel et tilknyttet worktree på grenen rudel/{new-id} i stedet for en almindelig kopi. Kilde-ID'et registreres i den nye post.
Livscyklusmetadata
Sandkasser kan have metadata til oprydning og ejerskab:
wp rudel create \
--name=feature-a \
--owner=dennis \
--labels=agent,qa \
--purpose="Test checkout changes" \
--ttl-days=7
Brug --protected, når automatisk oprydning ikke må fjerne sandkassen. Se Politik.
Grænser
Oprettelsen mislykkes, når indstillingerne max_sandboxes eller max_disk_mb nås. Begge har som standard værdien 0, hvilket betyder ingen grænse. Se Konfiguration.
Git-checkouts
wp rudel create --name=feature-a --git=https://example.test/my-theme.git
Rudel opretter sandkassen, kloner fjernlageret til themes/my-theme i sandkassemappen og skifter checkout til grenen rudel/{id}. Tilføj --type=plugin for i stedet at klone til plugins/my-theme. Hvis kloningen mislykkes, bevares sandkassen, og der vises en advarsel. Se Git for at se, hvad sandkassen viser fra denne checkout.
Mappestruktur
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