
# Създаване

## Създаване от хоста

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

Rudel генерира ID от името и четири шестнадесетични знака (например `alpha-3be7`), клонира таблиците WordPress на хоста с генериран префикс на таблиците, копира избраната тема в директорията на пясъчната среда и записва средата в базата данни WordPress на хоста. `siteurl` и `home` на пясъчната среда запазват URL на хоста.

Ако `--theme` е пропуснато, Rudel използва активната тема на сайта на хоста. Темата трябва да е инсталирана на хоста. Дъщерната тема включва и родителската.

Копират се всички таблици с префикса на основната инсталация, включително `users` и `usermeta`, с изключение на собствените таблици на Rudel. В текущата версия това включва и таблиците на вече съществуващите пясъчници, така че всеки нов пясъчник е по-голям от предишния. Вижте [issue #3](https://github.com/inline0/rudel/issues/3).

## Създаване от друг пясъчник

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

Новият пясъчник получава копие на всяка таблица с префикса на изходния пясъчник, включително неговите таблици със снимки, както и неговата тема. Директориите със снимки не се копират, затова тези таблици не се използват в новия пясъчник ([issue #12](https://github.com/inline0/rudel/issues/12)). Ако директорията на темата източник е хранилище Git, Rudel създава свързано работно дърво в клона `rudel/{new-id}` вместо обикновено копие. ID на източника се записва в новия запис.

## Метаданни за жизнения цикъл

Пясъчниците могат да съдържат метаданни за почистване и собственост:

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

Използвайте `--protected`, когато автоматизираното почистване не трябва да премахва пясъчника. Вижте [Policy](https://rudel.inline0.dev/bg/docs/features/policy).

## Ограничения

Създаването е неуспешно, когато се достигне настройката `max_sandboxes` или `max_disk_mb`. И двете по подразбиране са `0`, което означава, че няма ограничение. Вижте [Configuration](https://rudel.inline0.dev/bg/docs/configuration).

## Git клонирания

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

Rudel създава пясъчника, клонира отдалеченото хранилище в `themes/my-theme` в директорията на пясъчника и превключва клонирането към клона `rudel/{id}`. Добавете `--type=plugin`, за да клонирате в `plugins/my-theme`. При неуспешно клониране пясъчникът остава и се извежда предупреждение. Вижте [Git](https://rudel.inline0.dev/bg/docs/features/git), за да разберете какво обслужва пясъчникът от това клониране.

## Структура на директориите

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