
# Skapa

## Skapa från värden

```bash
wp rudel create --name=alpha --theme=twentytwentyfour
```

Rudel genererar ett ID från namnet plus fyra hextecken (till exempel `alpha-3be7`), klonar värdens WordPress-tabeller till ett genererat tabellprefix, kopierar det valda temat till sandlådans katalog och registrerar sandlådan i värdens WordPress-databas. Sandlådans `siteurl` och `home` behåller värdens URL.

Om `--theme` utelämnas använder Rudel värdwebbplatsens aktiva tema. Temat måste vara installerat på värden. Ett barntema tar med sig sitt överordnade tema.

Varje tabell med värdens tabellprefix kopieras, inklusive `users` och `usermeta`, förutom Rudels egna tabeller. I den aktuella utgåvan omfattar detta även tabellerna för sandlådor som redan finns, så varje ny sandlåda blir större än den förra. Se [ärende #3](https://github.com/inline0/rudel/issues/3).

## Skapa från en annan sandlåda

```bash
wp rudel create --name=feature-b --clone-from=alpha-3be7
```

Den nya sandlådan får en kopia av varje tabell med källsandlådans prefix, inklusive källans ögonblicksbildstabeller, samt dess tema. Kataloger med ögonblicksbilder kopieras inte, så de tabellerna används inte i den nya sandlådan ([ärende #12](https://github.com/inline0/rudel/issues/12)). När källtemats katalog är ett Git-arkiv skapar Rudel ett länkat arbetsträd på grenen `rudel/{new-id}` i stället för en vanlig kopia. Källans ID registreras i den nya posten.

## Livscykelmetadata

Sandlådor kan ha metadata för rensning och ägarskap:

```bash
wp rudel create \
  --name=feature-a \
  --owner=dennis \
  --labels=agent,qa \
  --purpose="Test checkout changes" \
  --ttl-days=7
```

Använd `--protected` när automatisk rensning inte ska ta bort sandlådan. Se [Policy](https://rudel.inline0.dev/sv/docs/features/policy).

## Gränser

Skapandet misslyckas när inställningen `max_sandboxes` eller `max_disk_mb` uppnås. Båda har standardvärdet `0`, vilket betyder att det inte finns någon gräns. Se [Konfiguration](https://rudel.inline0.dev/sv/docs/configuration).

## Git-arbetskopior

```bash
wp rudel create --name=feature-a --git=https://example.test/my-theme.git
```

Rudel skapar sandlådan, klonar fjärrlagringsplatsen till `themes/my-theme` inuti sandlådans katalog och byter arbetskopian till grenen `rudel/{id}`. Lägg till `--type=plugin` för att klona till `plugins/my-theme` i stället. En misslyckad kloning lämnar sandlådan kvar och skriver ut en varning. Se [Git](https://rudel.inline0.dev/sv/docs/features/git) för vad sandlådan serverar från den arbetskopian.

## Kataloglayout

```text
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
```
