
# Ustvarjanje

## Ustvarjanje iz gostitelja

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

Rudel ustvari ID iz imena in štirih šestnajstiških znakov (na primer `alpha-3be7`), klonira tabele gostitelja WordPress v ustvarjeno predpono tabel, kopira izbrano temo v imenik peskovnega okolja in zabeleži peskovno okolje v zbirki podatkov gostitelja WordPress. Vrednosti `siteurl` in `home` peskovnega okolja ohranita gostiteljski URL.

Če `--theme` izpustite, Rudel uporabi aktivno temo mesta gostitelja. Tema mora biti nameščena na gostitelju. Podrejena tema s seboj prinese nadrejeno temo.

Kopira se vsaka tabela s predpono tabel gostitelja, vključno s `users` in `usermeta`, razen lastnih tabel vtičnika Rudel. V trenutni izdaji so vključene tudi tabele že obstoječih peskovnih okolij, zato je vsako novo peskovno okolje večje od prejšnjega. Glejte [težavo št. 3](https://github.com/inline0/rudel/issues/3).

## Ustvarjanje iz drugega peskovnega okolja

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

Novo peskovno okolje prejme kopijo vsake tabele s predpono izvornega peskovnega okolja, vključno z njegovimi tabelami posnetkov, ter njegovo temo. Imeniki posnetkov se ne kopirajo, zato te tabele v novem peskovnem okolju niso v uporabi ([težava št. 12](https://github.com/inline0/rudel/issues/12)). Če je imenik teme vira repozitorij Git, Rudel ustvari povezano delovno kopijo na veji `rudel/{new-id}` namesto navadne kopije. ID vira se zabeleži v novem zapisu.

## Metapodatki življenjskega cikla

Peskovna okolja lahko vsebujejo metapodatke za čiščenje in lastništvo:

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

Uporabite `--protected`, kadar avtomatizirano čiščenje ne sme odstraniti peskovnega okolja. Glejte [Pravilnik](https://rudel.inline0.dev/sl/docs/features/policy).

## Omejitve

Ustvarjanje ne uspe, ko je dosežena nastavitev `max_sandboxes` ali `max_disk_mb`. Privzeta vrednost obeh je `0`, kar pomeni, da omejitve ni. Glejte [Konfiguracija](https://rudel.inline0.dev/sl/docs/configuration).

## Kopije za delo Git

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

Rudel ustvari peskovno okolje, klonira oddaljeni repozitorij v `themes/my-theme` znotraj imenika peskovnega okolja in preklopi kopijo za delo na vejo `rudel/{id}`. Dodajte `--type=plugin`, da klonirate v `plugins/my-theme`. Če kloniranje ne uspe, peskovno okolje ostane, prikaže pa se opozorilo. Glejte [Git](https://rudel.inline0.dev/sl/docs/features/git), kjer je opisano, kaj peskovno okolje streže iz te kopije za delo.

## Postavitev imenikov

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