
# Konfigūracija

Rudel turi dviejų tipų konfigūraciją: nustatymus, saugomus `rudel_config` WordPress parinktyje, ir konstantas, kurias apibrėžiate faile `wp-config.php`.

## Parinktis `rudel_config`

Nustatymai saugomi viename `wp_options` masyve, skiltyje `rudel_config`. Kol kas nors neįrašo parinkties, kiekvienam raktui naudojama numatytoji reikšmė. Nežinomi raktai ignoruojami, o reikšmės saugomos kaip sveikieji skaičiai.

| Raktas | Numatytoji reikšmė | Reikšmė |
|-----|---------|---------|
| `max_sandboxes` | `0` | Atsisakyti kurti smėlio dėžę, kai jų skaičius pasiekia šią reikšmę. `0` reiškia, kad apribojimo nėra. |
| `max_disk_mb` | `0` | Atsisakyti kurti smėlio dėžę, kai smėlio dėžių katalogai užima šį megabaitų skaičių. Klonuotos lentelės neįskaičiuojamos. `0` reiškia, kad apribojimo nėra. |
| `default_ttl_days` | `0` | Galiojimo laikas naujoms smėlio dėžėms, sukurtoms be `ttl_days` arba `expires_at`. `0` reiškia, kad galiojimo laikas nenustatytas. |
| `max_age_days` | `0` | Valymas pašalina senesnes už šią reikšmę smėlio dėžes. `0` išjungia amžiaus taisyklę. |
| `max_idle_days` | `0` | Valymas pašalina smėlio dėžes, kuriose per nurodytą laiką neužfiksuota veikla (užklausa arba momentinė kopija). `0` išjungia neveiklumo taisyklę. |
| `auto_cleanup_enabled` | `1` | Kas valandą vykdyti valymo politiką iš WP-Cron. |
| `auto_cleanup_merged` | `0` | Taip pat vykdyti sujungtų šakų valymą iš WP-Cron. |
| `expiring_environment_notice_days` | `0` | Kiekvieną automatizavimo vykdymą surinkti per nurodytą dienų skaičių baigsiančias galioti smėlio dėžes ir perduoti jas veiksmui `rudel_after_automation_expiring_environments`. |
| `auto_snapshot_before_restore` | `1` | Prieš kiekvieną atkūrimą išsaugoti `pre-restore-...` momentinę kopiją. |

`wp rudel status` išveda dabartines reikšmes.

Įrašykite parinktį naudodami WP-CLI. Nenurodytiems raktams paliekamos numatytosios reikšmės:

```bash
wp option update rudel_config '{"max_age_days":14,"max_idle_days":3,"auto_cleanup_merged":1}' --format=json
```

Arba iš PHP:

```php
$config = new Rudel\RudelConfig();
$config->set( 'max_sandboxes', 20 );
$config->save();
```

Pakeitus nustatymą, įvykis WP-Cron suplanuojamas arba pašalinamas per kitą užklausą. Žr. [Automatizavimas](https://rudel.inline0.dev/lt/docs/features/automation).

## Konstantos

Apibrėžkite jas faile `wp-config.php` prieš Rudel įkrovos eilutę.

| Konstanta | Numatytoji reikšmė | Reikšmė |
|----------|---------|---------|
| `RUDEL_CLI_COMMAND` | `rudel` | Pagrindinės WP-CLI komandos pavadinimas. |
| `RUDEL_ENVIRONMENTS_DIR` | `wp-content/rudel-environments` | Katalogas, kuriame laikomi smėlio dėžių katalogai. Temos ištekliai visada pateikiami iš `/wp-content/rudel-environments/{id}/themes`, todėl kitas katalogas vis tiek turi būti pasiekiamas tuo URL. |
| `RUDEL_RUNTIME_TABLE_PREFIX` | `rudel_` | Rudel lentelių pavadinimų dalis po prefikso WordPress. Žr. [Vykdymo būsena](https://rudel.inline0.dev/lt/docs/features/runtime-state). |
| `RUDEL_RUNTIME_TABLE_ENVIRONMENTS` | | Pilno aplinkų lentelės pavadinimo perrašymas po prefikso WordPress. |
| `RUDEL_RUNTIME_TABLE_WORKTREES` | | Pilno darbinių medžių lentelės pavadinimo perrašymas po prefikso WordPress. |
| `RUDEL_DB_DRIVER` | `auto` | Atskiros `Rudel\Connection` prieigos tvarkyklė: `auto`, `mysqli` arba `pdo`. WordPress užklausoms visada naudojama `$wpdb`. |
| `RUDEL_GIT_AUTHOR_NAME` | `Rudel` | Autoriaus vardas, kurį Rudel įrašo į darbinės kopijos Git konfigūraciją, kai joje nėra `user.name`; naudojamas `wp rudel push` įrašams. |
| `RUDEL_GIT_AUTHOR_EMAIL` | `rudel@localhost` | Autoriaus el. paštas, kurį Rudel įrašo, kai darbinėje kopijoje nėra `user.email`. |

## Konstantos smėlio dėžės užklausoje

Kai užklausa pasirenka smėlio dėžę, įkrovos procesas apibrėžia konstantas, kurias gali nuskaityti kodas. Svarbiausios:

| Konstanta | Reikšmė |
|----------|-------|
| `RUDEL_ID` | smėlio dėžės ID |
| `RUDEL_PATH` | smėlio dėžės katalogas |
| `RUDEL_TABLE_PREFIX` | smėlio dėžės lentelių prefiksas |
| `RUDEL_THEME_SLUG` | iš smėlio dėžės pateikiama tema |
| `RUDEL_HOST_URL`, `RUDEL_ENVIRONMENT_URL` | pagrindinės aplinkos ir smėlio dėžės URL |
| `RUDEL_DISABLE_EMAIL` | `true`; siunčiamas paštas blokuojamas |

Pirmenybę teikite metodams [API](https://rudel.inline0.dev/lt/docs/api), pavyzdžiui, `Rudel::id()`, o ne tiesioginiam konstantų skaitymui.

Įkrovos procesas taip pat apibrėžia `WP_DEBUG`, `WP_DEBUG_LOG`, `WP_DEBUG_DISPLAY`, `WP_TEMP_DIR`, `WP_CACHE_KEY_SALT` ir aštuonis autentifikavimo raktus bei druskas, tačiau tik tuos, kurių `wp-config.php` dar nebuvo apibrėžęs. Žr. [Klaidų žurnalai](https://rudel.inline0.dev/lt/docs/features/logging) ir [Izoliavimas](https://rudel.inline0.dev/lt/docs/environments/isolation).
