
# Konfiguration

Rudel har två typer av konfiguration: inställningar lagrade i alternativet `rudel_config` WordPress och konstanter som du definierar i `wp-config.php`.

## Alternativet `rudel_config`

Inställningarna finns i en array i `wp_options` under `rudel_config`. Tills något skriver till alternativet används standardvärdet för varje nyckel. Okända nycklar ignoreras och värden lagras som heltal.

| Nyckel | Standardvärde | Betydelse |
|-----|---------|---------|
| `max_sandboxes` | `0` | Vägrar skapa en sandlåda när det finns så här många. `0` betyder ingen gräns. |
| `max_disk_mb` | `0` | Vägrar skapa en sandlåda när sandlådekatalogerna använder så här många megabyte. Klonade tabeller räknas inte. `0` betyder ingen gräns. |
| `default_ttl_days` | `0` | Utgångstid som tilldelas nya sandlådor som skapas utan `ttl_days` eller `expires_at`. `0` betyder att de inte löper ut. |
| `max_age_days` | `0` | Rensningen tar bort sandlådor som är äldre än så här. `0` inaktiverar åldersregeln. |
| `max_idle_days` | `0` | Rensningen tar bort sandlådor utan registrerad aktivitet (en sandlådeförfrågan eller ögonblicksbild) under så här lång tid. `0` inaktiverar inaktivitetsregeln. |
| `auto_cleanup_enabled` | `1` | Kör rensningspolicyn från WP-Cron varje timme. |
| `auto_cleanup_merged` | `0` | Kör även rensning av sammanslagna grenar från WP-Cron. |
| `expiring_environment_notice_days` | `0` | Samla in sandlådor som löper ut inom så här många dagar vid varje automatiseringskörning och skicka dem till åtgärden `rudel_after_automation_expiring_environments`. |
| `auto_snapshot_before_restore` | `1` | Spara en ögonblicksbild av `pre-restore-...` före varje återställning. |

`wp rudel status` skriver ut de aktuella värdena.

Skriv alternativet med WP-CLI. Nycklar som du utelämnar behåller sina standardvärden:

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

Eller från PHP:

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

Händelsen WP-Cron schemaläggs eller tas bort vid nästa förfrågan efter en ändring. Se [Automatisering](https://rudel.inline0.dev/sv/docs/features/automation).

## Konstanter

Definiera dessa i `wp-config.php` ovanför bootstrap-raden Rudel.

| Konstant | Standardvärde | Betydelse |
|----------|---------|---------|
| `RUDEL_CLI_COMMAND` | `rudel` | Namn på rotkommandot WP-CLI. |
| `RUDEL_ENVIRONMENTS_DIR` | `wp-content/rudel-environments` | Katalog som innehåller sandlådekataloger. Temats tillgångar hämtas alltid från `/wp-content/rudel-environments/{id}/themes`, så en annan katalog måste fortfarande vara tillgänglig där via URL. |
| `RUDEL_RUNTIME_TABLE_PREFIX` | `rudel_` | Del av tabellnamnen för Rudel efter prefixet WordPress. Se [Körtidstillstånd](https://rudel.inline0.dev/sv/docs/features/runtime-state). |
| `RUDEL_RUNTIME_TABLE_ENVIRONMENTS` | | Fullständig namnöverskrivning för miljötabellen, efter prefixet WordPress. |
| `RUDEL_RUNTIME_TABLE_WORKTREES` | | Fullständig namnöverskrivning för arbetsträdstabellen, efter prefixet WordPress. |
| `RUDEL_DB_DRIVER` | `auto` | Drivrutin för fristående åtkomst till `Rudel\Connection`: `auto`, `mysqli` eller `pdo`. WordPress-förfrågningar använder alltid `$wpdb`. |
| `RUDEL_GIT_AUTHOR_NAME` | `Rudel` | Författarnamn som Rudel skriver till en arbetskopias Git-konfiguration när den saknar `user.name`, används för `wp rudel push`-commits. |
| `RUDEL_GIT_AUTHOR_EMAIL` | `rudel@localhost` | Författarens e-postadress som Rudel skriver när arbetskopian saknar `user.email`. |

## Konstanter i en sandlådeförfrågan

När en förfrågan väljer en sandlåda definierar bootstrapen konstanter som koden kan läsa. De mest användbara är:

| Konstant | Värde |
|----------|-------|
| `RUDEL_ID` | sandlådans ID |
| `RUDEL_PATH` | sandlådans katalog |
| `RUDEL_TABLE_PREFIX` | sandlådans tabellprefix |
| `RUDEL_THEME_SLUG` | tema som serveras från sandlådan |
| `RUDEL_HOST_URL`, `RUDEL_ENVIRONMENT_URL` | värdens och sandlådans URL:er |
| `RUDEL_DISABLE_EMAIL` | `true`; utgående e-post blockeras |

Föredra metoderna [API](https://rudel.inline0.dev/sv/docs/api), till exempel `Rudel::id()`, framför att läsa konstanterna direkt.

Bootstrapen definierar också `WP_DEBUG`, `WP_DEBUG_LOG`, `WP_DEBUG_DISPLAY`, `WP_TEMP_DIR`, `WP_CACHE_KEY_SALT` och de åtta autentiseringsnycklarna och salterna, men bara de som `wp-config.php` inte redan har definierat. Se [Loggning av fel](https://rudel.inline0.dev/sv/docs/features/logging) och [Isolering](https://rudel.inline0.dev/sv/docs/environments/isolation).
