
# CLI

Rudel își înregistrează comenzile sub `wp rudel`. WP-CLI respinge cu `unknown --<name> parameter` orice opțiune pe care o comandă nu o enumeră aici.

Puteți redenumi comanda rădăcină pentru utilizare încorporată definind `RUDEL_CLI_COMMAND` în `wp-config.php` înainte de încărcarea pluginului.

```php
define( 'RUDEL_CLI_COMMAND', 'sandbox' );
```

Astfel, `wp rudel create` devine `wp sandbox create`. Comportamentul comenzii nu se schimbă.

În mod implicit, comenzile rulează pe gazdă. Pentru a rula orice altă comandă WP-CLI într-un mediu izolat, setați `RUDEL_ENVIRONMENT`:

```bash
RUDEL_ENVIRONMENT=alpha-3be7 wp option get blogname
```

## create

```bash
wp rudel create [--name=<name>] [--theme=<slug>] [--clone-from=<id>] [--owner=<owner>] [--labels=<labels>] [--purpose=<purpose>] [--protected] [--ttl-days=<days>] [--expires-at=<timestamp>] [--git=<remote>] [--type=<theme|plugin>] [--template=<label>]
```

Creează un mediu izolat și afișează ID-ul acestuia.

| Opțiune | Semnificație |
|--------|---------|
| `--name` | Nume lizibil. ID-ul este numele urmat de patru caractere hexazecimale. Implicit, se folosește numele depozitului cu `--git`, altfel `sandbox`. |
| `--theme` | Tema de copiat în mediul izolat. Trebuie să fie instalată pe gazdă. Implicit, se folosește tema activă a gazdei sau tema mediului izolat sursă cu `--clone-from`. |
| `--clone-from` | Clonează tabelele și tema dintr-un mediu izolat existent în locul gazdei. |
| `--owner`, `--labels`, `--purpose` | Metadate. Etichetele sunt separate prin virgule. |
| `--protected` | Exclude mediul izolat de la curățare. |
| `--ttl-days` | Expirare calculată de la momentul creării. |
| `--expires-at` | Marcaj temporal explicit pentru expirare. |
| `--git` | Clonează un depozit la distanță în directorul mediului izolat. Consultați [Clonarea depozitelor](https://rudel.inline0.dev/ro/docs/features/git)Git. |
| `--type` | Unde face checkout `--git`: `theme` (implicit) sau `plugin`. |
| `--template` | Etichetă stocată în înregistrare, implicit `blank`. Nu încarcă un șablon salvat. |

`--clone-db`, `--clone-themes`, `--clone-plugins`, `--clone-uploads`, `--clone-all`, `--shared-plugins` și `--shared-uploads` sunt depreciate. Acestea modifică doar mesajele de progres: fiecare sandbox clonează tabelele, copiază o temă și partajează pluginurile și fișierele încărcate.

Comanda se încheie cu un indiciu de a copia `cd` în directorul sandboxului și de a rula `wp post list`. Acesta rulează pe gazdă, deoarece `wp-cli.yml` din directorul sandboxului indică spre URL de pe gazdă. Folosiți în schimb `RUDEL_ENVIRONMENT`.

## list

```bash
wp rudel list [--format=<table|json|csv|yaml|count>]
```

Listează sandboxurile cu ID, nume, proprietar, protecție, expirare, stare, eticheta șablonului, ora creării și dimensiunea directorului.

## info

```bash
wp rudel info <id> [--format=<table|json|yaml>]
```

Afișează o înregistrare de sandbox, inclusiv prefixul tabelelor, tema, etichetele, metadatele clonei, URL și calea conținutului.

## update

```bash
wp rudel update <id> [--owner=<owner>] [--labels=<labels>] [--purpose=<purpose>] [--protected] [--unprotected] [--ttl-days=<days>] [--expires-at=<timestamp>] [--clear-expiry]
```

Actualizează metadatele. `--ttl-days` calculează de acum înainte. Nu modifică conținutul site-ului sandboxului.

## destroy

```bash
wp rudel destroy <id> [--force]
```

Elimină tabelele sandboxului, șterge directorul și worktree-urile asociate și șterge înregistrarea. Comanda cere confirmare; `--force` omite solicitarea. Protecția nu împiedică `destroy`: un sandbox protejat este distrus la fel ca oricare altul.

## status

```bash
wp rudel status
```

Afișează un tabel cu starea inițializării, sandboxul curent, directorul sandboxurilor, numărul de sandboxuri, valorile `rudel_config` și dacă automatizarea este programată. Afișează întotdeauna un tabel și ignoră `--format`.

## cleanup

```bash
wp rudel cleanup [--dry-run] [--max-age-days=<days>] [--max-idle-days=<days>] [--merged]
```

Fără `--merged`, elimină sandboxurile neprotejate a căror expirare a trecut sau care depășesc limita de vechime ori au fost inactive mai mult decât limita de inactivitate. `--max-age-days` și `--max-idle-days` suprascriu `rudel_config` pentru această rulare. Cu `--merged`, elimină sandboxurile ale căror ramuri de worktree asociate Git au fost îmbinate. Sandboxurile protejate sunt întotdeauna omise. Consultați [Curățare](https://rudel.inline0.dev/ro/docs/features/cleanup).

## logs

```bash
wp rudel logs <id> [--lines=<lines>] [--follow] [--clear]
```

Afișează ultimele linii din `debug.log` sandboxului (implicit 50). `--follow` rulează `tail -f`; `--clear` golește fișierul. Consultați [Jurnalizarea erorilor](https://rudel.inline0.dev/ro/docs/features/logging).

## snapshot

```bash
wp rudel snapshot <id> --name=<name>
```

Creează un instantaneu cu nume.

## restore

```bash
wp rudel restore <id> --snapshot=<name> [--force]
```

Restaurează un instantaneu. Comanda cere confirmare; `--force` omite solicitarea. Consultați [Instantanee](https://rudel.inline0.dev/ro/docs/features/snapshots).

## template

```bash
wp rudel template save <id> --name=<name> [--description=<description>]
wp rudel template list [--format=<table|json|csv|yaml|count>]
wp rudel template delete <name> [--force]
```

Salvează, listează și șterge copiile șabloanelor. Nicio comandă nu creează un sandbox dintr-un șablon salvat. Consultați [Șabloane](https://rudel.inline0.dev/ro/docs/features/templates).

## push

```bash
wp rudel push <id> [--git=<remote>] [--dir=<dir>] [--message=<message>]
```

Comitează și trimite către ramura `rudel/<id>` o copie de lucru din directorul sandboxului.

| Opțiune | Semnificație |
|--------|---------|
| `--git` | Depozit la distanță URL. Necesar doar dacă nu este salvat niciunul; este reținut după prima trimitere reușită. |
| `--dir` | Director relativ la directorul sandboxului, de exemplu `themes/my-theme`. Implicit este directorul copiei de lucru salvat, altfel întregul director al sandboxului. |
| `--message` | Mesajul commitului, implicit `Update from Rudel sandbox`. |

Consultați [Git](https://rudel.inline0.dev/ro/docs/features/git).
