
# CLI

Το Rudel καταχωρίζει τις εντολές του στο `wp rudel`. Το WP-CLI απορρίπτει με `unknown --<name> parameter` μια επιλογή που δεν περιλαμβάνεται στη λίστα της εντολής εδώ.

Μπορείτε να μετονομάσετε τη βασική εντολή για ενσωματωμένη χρήση ορίζοντας το `RUDEL_CLI_COMMAND` στο `wp-config.php` πριν από τη φόρτωση του πρόσθετου.

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

Αυτό αλλάζει το `wp rudel create` σε `wp sandbox create`. Η συμπεριφορά της εντολής δεν αλλάζει.

Από προεπιλογή, οι εντολές εκτελούνται στο host. Για να εκτελέσετε οποιαδήποτε άλλη εντολή WP-CLI μέσα σε sandbox, ορίστε το `RUDEL_ENVIRONMENT`:

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

## δημιουργία

```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>]
```

Δημιουργεί ένα sandbox και εμφανίζει το ID του.

| Επιλογή | Σημασία |
|--------|---------|
| `--name` | Όνομα αναγνώσιμο από τον άνθρωπο. Το ID είναι το όνομα και τέσσερις δεκαεξαδικοί χαρακτήρες. Από προεπιλογή, χρησιμοποιείται το όνομα του αποθετηρίου με `--git`, διαφορετικά το `sandbox`. |
| `--theme` | Θέμα προς αντιγραφή στο sandbox. Πρέπει να είναι εγκατεστημένο στο host. Από προεπιλογή, χρησιμοποιείται το ενεργό θέμα του host ή το θέμα του sandbox-πηγής με το `--clone-from`. |
| `--clone-from` | Κλωνοποιεί πίνακες και θέμα από υπάρχον sandbox αντί από το host. |
| `--owner`, `--labels`, `--purpose` | Μεταδεδομένα. Οι ετικέτες διαχωρίζονται με κόμμα. |
| `--protected` | Εξαιρεί το sandbox από την εκκαθάριση. |
| `--ttl-days` | Λήξη σε σχέση με τον χρόνο δημιουργίας. |
| `--expires-at` | Ρητή χρονική σήμανση λήξης. |
| `--git` | Κλωνοποιεί ένα απομακρυσμένο αποθετήριο στον κατάλογο sandbox. Δείτε [Git](https://rudel.inline0.dev/el/docs/features/git). |
| `--type` | Πού γίνεται checkout το `--git`: `theme` (προεπιλογή) ή `plugin`. |
| `--template` | Ετικέτα αποθηκευμένη στην εγγραφή, προεπιλογή `blank`. Δεν φορτώνει αποθηκευμένο πρότυπο. |

Τα `--clone-db`, `--clone-themes`, `--clone-plugins`, `--clone-uploads`, `--clone-all`, `--shared-plugins` και `--shared-uploads` έχουν καταργηθεί. Αλλάζουν μόνο τα μηνύματα προόδου: κάθε sandbox κλωνοποιεί τους πίνακες, αντιγράφει ένα θέμα και χρησιμοποιεί από κοινού τα πρόσθετα και τα ανεβασμένα αρχεία.

Η εντολή τελειώνει με μια υπόδειξη να αντιγράψετε το `cd` στον κατάλογο sandbox και να εκτελέσετε το `wp post list`. Αυτό εκτελείται στον κεντρικό υπολογιστή, επειδή το `wp-cli.yml` στον κατάλογο sandbox παραπέμπει στο URL του κεντρικού υπολογιστή. Χρησιμοποιήστε αντί γι' αυτό το `RUDEL_ENVIRONMENT`.

## λίστα

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

Παραθέτει τα sandbox με ID, όνομα, κάτοχο, προστασία, λήξη, κατάσταση, ετικέτα προτύπου, χρόνο δημιουργίας και μέγεθος καταλόγου.

## πληροφορίες

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

Εμφανίζει μία εγγραφή sandbox, μαζί με το πρόθεμα πινάκων, το θέμα, τις ετικέτες, τα μεταδεδομένα κλωνοποίησης, το URL και τη διαδρομή περιεχομένου.

## ενημέρωση

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

Ενημερώνει τα μεταδεδομένα. Το `--ttl-days` μετρά από τώρα. Δεν αλλάζει το περιεχόμενο του ιστότοπου sandbox.

## καταστροφή

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

Διαγράφει τους πίνακες του sandbox, αφαιρεί τον κατάλογό του και τα συνδεδεμένα worktree και διαγράφει την εγγραφή του. Η εντολή ζητά επιβεβαίωση· το `--force` παραλείπει την προτροπή. Η προστασία δεν εμποδίζει το `destroy`: ένα προστατευμένο sandbox καταστρέφεται όπως κάθε άλλο.

## κατάσταση

```bash
wp rudel status
```

Εκτυπώνει έναν πίνακα με την κατάσταση αρχικοποίησης, το τρέχον sandbox, τον κατάλογο sandbox, το πλήθος sandbox, τις τιμές `rudel_config` και το αν έχει προγραμματιστεί αυτοματοποίηση. Εκτυπώνει πάντα πίνακα και αγνοεί το `--format`.

## εκκαθάριση

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

Χωρίς το `--merged`, αφαιρεί απροστάτευτα sandbox των οποίων έχει παρέλθει η λήξη ή που είναι παλαιότερα από το όριο ηλικίας ή παραμένουν ανενεργά περισσότερο από το όριο αδράνειας. Τα `--max-age-days` και `--max-idle-days` παρακάμπτουν το `rudel_config` για αυτή την εκτέλεση. Με το `--merged`, αφαιρεί sandbox των οποίων οι συνδεδεμένοι κλάδοι worktree του Git έχουν συγχωνευτεί. Τα προστατευμένα sandbox παραλείπονται πάντα. Δείτε την [Εκκαθάριση](https://rudel.inline0.dev/el/docs/features/cleanup).

## αρχεία καταγραφής

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

Εκτυπώνει τις τελευταίες γραμμές του `debug.log` του sandbox (προεπιλογή: 50). Το `--follow` εκτελεί το `tail -f`· το `--clear` αδειάζει το αρχείο. Δείτε την [Καταγραφή σφαλμάτων](https://rudel.inline0.dev/el/docs/features/logging).

## στιγμιότυπο

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

Δημιουργεί ένα επώνυμο στιγμιότυπο.

## επαναφορά

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

Επαναφέρει ένα στιγμιότυπο. Η εντολή ζητά επιβεβαίωση· το `--force` παραλείπει την προτροπή. Δείτε τα [Στιγμιότυπα](https://rudel.inline0.dev/el/docs/features/snapshots).

## πρότυπο

```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]
```

Αποθηκεύει, παραθέτει και διαγράφει αντίγραφα προτύπων. Καμία εντολή δεν δημιουργεί sandbox από αποθηκευμένο πρότυπο. Δείτε τα [Πρότυπα](https://rudel.inline0.dev/el/docs/features/templates).

## Ώθηση

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

Κάνει commit και push ένα checkout μέσα στον κατάλογο sandbox στον κλάδο `rudel/<id>`.

| Επιλογή | Σημασία |
|--------|---------|
| `--git` | Απομακρυσμένο URL. Απαιτείται μόνο αν δεν έχει αποθηκευτεί κανένα· απομνημονεύεται μετά το πρώτο επιτυχές push. |
| `--dir` | Κατάλογος σχετικός με τον κατάλογο sandbox, για παράδειγμα `themes/my-theme`. Προεπιλογή είναι ο αποθηκευμένος κατάλογος checkout ή, αν δεν υπάρχει, ολόκληρος ο κατάλογος sandbox. |
| `--message` | Μήνυμα commit, προεπιλογή `Update from Rudel sandbox`. |

Δείτε τα [Git](https://rudel.inline0.dev/el/docs/features/git).
