
# Διαμόρφωση

Το Rudel έχει δύο είδη διαμόρφωσης: ρυθμίσεις αποθηκευμένες στην επιλογή `rudel_config` WordPress και σταθερές που ορίζετε στο `wp-config.php`.

## Η επιλογή `rudel_config`

Οι ρυθμίσεις βρίσκονται σε έναν πίνακα στο `wp_options`, κάτω από το `rudel_config`. Μέχρι να εγγραφεί κάτι στην επιλογή, κάθε κλειδί χρησιμοποιεί την προεπιλεγμένη τιμή του. Τα άγνωστα κλειδιά αγνοούνται και οι τιμές αποθηκεύονται ως ακέραιοι.

| Κλειδί | Προεπιλογή | Σημασία |
|-----|---------|---------|
| `max_sandboxes` | `0` | Αρνείται τη δημιουργία sandbox όταν υπάρχουν τόσα. Το `0` σημαίνει χωρίς όριο. |
| `max_disk_mb` | `0` | Αρνείται τη δημιουργία sandbox όταν οι κατάλογοι sandbox χρησιμοποιούν τόσα megabyte. Οι κλωνοποιημένοι πίνακες δεν υπολογίζονται. Το `0` σημαίνει χωρίς όριο. |
| `default_ttl_days` | `0` | Λήξη που δίνεται στα νέα sandbox που δημιουργούνται χωρίς `ttl_days` ή `expires_at`. Το `0` σημαίνει χωρίς λήξη. |
| `max_age_days` | `0` | Η εκκαθάριση αφαιρεί sandbox παλαιότερα από αυτό το διάστημα. Το `0` απενεργοποιεί τον κανόνα ηλικίας. |
| `max_idle_days` | `0` | Η εκκαθάριση αφαιρεί sandbox χωρίς καταγεγραμμένη δραστηριότητα (αίτημα sandbox ή στιγμιότυπο) για αυτό το διάστημα. Το `0` απενεργοποιεί τον κανόνα αδράνειας. |
| `auto_cleanup_enabled` | `1` | Εκτελεί την πολιτική εκκαθάρισης από το WP-Cron κάθε ώρα. |
| `auto_cleanup_merged` | `0` | Εκτελεί επίσης την εκκαθάριση συγχωνευμένων κλάδων από το WP-Cron. |
| `expiring_environment_notice_days` | `0` | Συλλέγει σε κάθε εκτέλεση αυτοματοποίησης τα sandbox που λήγουν μέσα σε τόσες ημέρες και τα περνά στην ενέργεια `rudel_after_automation_expiring_environments`. |
| `auto_snapshot_before_restore` | `1` | Αποθηκεύει ένα στιγμιότυπο `pre-restore-...` πριν από κάθε επαναφορά. |

Το `wp rudel status` εμφανίζει τις τρέχουσες τιμές.

Εγγράψτε την επιλογή με το WP-CLI. Τα κλειδιά που παραλείπετε διατηρούν τις προεπιλεγμένες τιμές τους:

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

Ή από το PHP:

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

Το συμβάν WP-Cron προγραμματίζεται ή αφαιρείται στο επόμενο αίτημα μετά από μια αλλαγή. Δείτε την [Αυτοματοποίηση](https://rudel.inline0.dev/el/docs/features/automation).

## Σταθερές

Ορίστε τις στο `wp-config.php`, πριν από τη γραμμή αρχικοποίησης Rudel.

| Σταθερά | Προεπιλογή | Σημασία |
|----------|---------|---------|
| `RUDEL_CLI_COMMAND` | `rudel` | Όνομα βασικής εντολής WP-CLI. |
| `RUDEL_ENVIRONMENTS_DIR` | `wp-content/rudel-environments` | Κατάλογος που περιέχει τους καταλόγους sandbox. Τα στοιχεία του θέματος προβάλλονται πάντα από το `/wp-content/rudel-environments/{id}/themes`, επομένως ένας διαφορετικός κατάλογος πρέπει να είναι προσβάσιμος από εκείνο το URL. |
| `RUDEL_RUNTIME_TABLE_PREFIX` | `rudel_` | Μέρος των ονομάτων πινάκων Rudel μετά το πρόθεμα WordPress. Δείτε την [Κατάσταση εκτέλεσης](https://rudel.inline0.dev/el/docs/features/runtime-state). |
| `RUDEL_RUNTIME_TABLE_ENVIRONMENTS` | | Πλήρης αντικατάσταση ονόματος για τον πίνακα περιβαλλόντων, μετά το πρόθεμα WordPress. |
| `RUDEL_RUNTIME_TABLE_WORKTREES` | | Πλήρης αντικατάσταση ονόματος για τον πίνακα worktrees, μετά το πρόθεμα WordPress. |
| `RUDEL_DB_DRIVER` | `auto` | Οδηγός για αυτόνομη πρόσβαση `Rudel\Connection`: `auto`, `mysqli` ή `pdo`. Τα αιτήματα WordPress χρησιμοποιούν πάντα το `$wpdb`. |
| `RUDEL_GIT_AUTHOR_NAME` | `Rudel` | Όνομα συντάκτη που το Rudel εγγράφει στη διαμόρφωση Git ενός checkout όταν δεν έχει `user.name`, για commits `wp rudel push`. |
| `RUDEL_GIT_AUTHOR_EMAIL` | `rudel@localhost` | Διεύθυνση email συντάκτη που το Rudel εγγράφει όταν το checkout δεν έχει `user.email`. |

## Σταθερές μέσα σε αίτημα sandbox

Όταν ένα αίτημα επιλέγει sandbox, η αρχικοποίηση ορίζει σταθερές που μπορεί να διαβάσει ο κώδικας. Οι πιο χρήσιμες είναι:

| Σταθερά | Τιμή |
|----------|-------|
| `RUDEL_ID` | ID sandbox |
| `RUDEL_PATH` | κατάλογος sandbox |
| `RUDEL_TABLE_PREFIX` | πρόθεμα πινάκων sandbox |
| `RUDEL_THEME_SLUG` | θέμα που προβάλλεται από το sandbox |
| `RUDEL_HOST_URL`, `RUDEL_ENVIRONMENT_URL` | URL κεντρικού υπολογιστή και sandbox |
| `RUDEL_DISABLE_EMAIL` | `true`· η εξερχόμενη αλληλογραφία είναι αποκλεισμένη |

Προτιμήστε τις μεθόδους [API](https://rudel.inline0.dev/el/docs/api), όπως το `Rudel::id()`, αντί να διαβάζετε απευθείας τις σταθερές.

Η διαδικασία αρχικοποίησης ορίζει επίσης τα `WP_DEBUG`, `WP_DEBUG_LOG`, `WP_DEBUG_DISPLAY`, `WP_TEMP_DIR`, `WP_CACHE_KEY_SALT` και τα οκτώ κλειδιά και salt ελέγχου ταυτότητας, αλλά μόνο όσα δεν έχει ήδη ορίσει το `wp-config.php`. Δείτε την [Καταγραφή σφαλμάτων](https://rudel.inline0.dev/el/docs/features/logging) και την [Απομόνωση](https://rudel.inline0.dev/el/docs/environments/isolation).
