
# Konfiguráció

A Rudel kétféle konfigurációt használ: a `rudel_config` WordPress beállításban tárolt értékeket, valamint az `wp-config.php` fájlban megadott konstansokat.

## A `rudel_config` beállítás

A beállítások egyetlen tömbben, az `wp_options` alatt, a `rudel_config` értéken találhatók. Amíg valami nem írja be ezt a beállítást, minden kulcs az alapértelmezett értékét használja. Az ismeretlen kulcsokat figyelmen kívül hagyja, az értékeket pedig egész számként tárolja.

| Kulcs | Alapértelmezett | Jelentés |
|-----|---------|---------|
| `max_sandboxes` | `0` | Ennyi sandbox elérésekor megtagadja újabb sandbox létrehozását. A `0` korlátlanságot jelent. |
| `max_disk_mb` | `0` | Megtagadja új sandbox létrehozását, ha a sandboxkönyvtárak mérete eléri ezt a megabájtszámot. A klónozott táblákat nem számolja bele. A `0` korlátlanságot jelent. |
| `default_ttl_days` | `0` | Az `ttl_days` vagy `expires_at` nélkül létrehozott új sandboxok lejárata. A `0` lejárat nélküliséget jelent. |
| `max_age_days` | `0` | A tisztítás eltávolítja az ennél régebbi sandboxokat. A `0` kikapcsolja a korra vonatkozó szabályt. |
| `max_idle_days` | `0` | A tisztítás eltávolítja azokat a sandboxokat, amelyekben ennyi ideje nem történt rögzített tevékenység (sandboxkérés vagy pillanatkép). A `0` kikapcsolja az inaktivitási szabályt. |
| `auto_cleanup_enabled` | `1` | Óránként futtatja a WP-Cron tisztítási szabályzatát. |
| `auto_cleanup_merged` | `0` | A beolvadt ágak tisztítását is futtatja a WP-Cron alapján. |
| `expiring_environment_notice_days` | `0` | Minden automatizálási futáskor összegyűjti az ennyi napon belül lejáró sandboxokat, és átadja őket a `rudel_after_automation_expiring_environments` műveletnek. |
| `auto_snapshot_before_restore` | `1` | Minden visszaállítás előtt `pre-restore-...` pillanatképet ment. |

A `wp rudel status` kiírja az aktuális értékeket.

Írja be a beállítást a WP-CLI paranccsal. A kihagyott kulcsok megőrzik alapértelmezett értéküket:

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

Vagy a PHP használatával:

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

A WP-Cron esemény módosítás után a következő kéréskor lesz ütemezve vagy eltávolítva. Lásd: [Automatizálás](https://rudel.inline0.dev/hu/docs/features/automation).

## Konstansok

Ezeket a `wp-config.php` fájlban határozza meg, a Rudel rendszerindító sor fölött.

| Konstans | Alapértelmezett | Jelentés |
|----------|---------|---------|
| `RUDEL_CLI_COMMAND` | `rudel` | Gyökér WP-CLI parancs neve. |
| `RUDEL_ENVIRONMENTS_DIR` | `wp-content/rudel-environments` | A sandboxkönyvtárakat tartalmazó könyvtár. A téma erőforrásait mindig a `/wp-content/rudel-environments/{id}/themes` szolgálja ki, ezért egy másik könyvtárnak is elérhetőnek kell lennie azon a URL útvonalon. |
| `RUDEL_RUNTIME_TABLE_PREFIX` | `rudel_` | A Rudel táblanevek része a WordPress prefixum után. Lásd: [Futásidejű állapot](https://rudel.inline0.dev/hu/docs/features/runtime-state). |
| `RUDEL_RUNTIME_TABLE_ENVIRONMENTS` | | A környezetek táblájának teljes névfelülírása a WordPress prefixum után. |
| `RUDEL_RUNTIME_TABLE_WORKTREES` | | A munkafák táblájának teljes névfelülírása a WordPress prefixum után. |
| `RUDEL_DB_DRIVER` | `auto` | Az önálló `Rudel\Connection` hozzáférés illesztőprogramja: `auto`, `mysqli` vagy `pdo`. A WordPress kérések mindig a `$wpdb` értéket használják. |
| `RUDEL_GIT_AUTHOR_NAME` | `Rudel` | Szerző neve, amelyet a Rudel ír a munkapéldány Git konfigurációjába, ha még nincs `user.name` értéke; véglegesítésekhez használatos: `wp rudel push`. |
| `RUDEL_GIT_AUTHOR_EMAIL` | `rudel@localhost` | Szerzői e-mail, amelyet a Rudel ír be, ha a munkapéldánynak nincs `user.email` értéke. |

## Konstansok sandboxkérés közben

Amikor egy kérés sandboxot választ ki, a rendszerindítás olyan konstansokat határoz meg, amelyeket a kód beolvashat. A leghasznosabbak:

| Konstans | Érték |
|----------|-------|
| `RUDEL_ID` | sandboxazonosító |
| `RUDEL_PATH` | sandboxkönyvtár |
| `RUDEL_TABLE_PREFIX` | sandbox táblaprefixuma |
| `RUDEL_THEME_SLUG` | a sandboxból kiszolgált téma |
| `RUDEL_HOST_URL`, `RUDEL_ENVIRONMENT_URL` | gazdagép- és sandbox-URL-ek |
| `RUDEL_DISABLE_EMAIL` | `true`; a kimenő levelezés le van tiltva |

Használja inkább a [API](https://rudel.inline0.dev/hu/docs/api) metódusait, például a `Rudel::id()` metódust, a konstansok közvetlen beolvasása helyett.

A rendszerindítás a `WP_DEBUG`, `WP_DEBUG_LOG`, `WP_DEBUG_DISPLAY`, `WP_TEMP_DIR`, `WP_CACHE_KEY_SALT` konstansokat, valamint a nyolc hitelesítési kulcsot és sót is meghatározza, de csak azokat, amelyeket a `wp-config.php` még nem határozott meg. Lásd: [Hibanaplózás](https://rudel.inline0.dev/hu/docs/features/logging) és [Elszigetelés](https://rudel.inline0.dev/hu/docs/environments/isolation).
