Μετάβαση στο περιεχόμενο

Δημιουργία

Δημιουργία από τον κεντρικό υπολογιστή

Κέλυφος
wp rudel create --name=alpha --theme=twentytwentyfour

Το Rudel δημιουργεί ένα ID από το όνομα συν τέσσερις δεκαεξαδικούς χαρακτήρες (για παράδειγμα alpha-3be7), κλωνοποιεί τους πίνακες WordPress του κεντρικού υπολογιστή σε ένα παραγόμενο πρόθεμα πινάκων, αντιγράφει το επιλεγμένο θέμα στον κατάλογο sandbox και καταγράφει το sandbox στη βάση δεδομένων WordPress του κεντρικού υπολογιστή. Τα siteurl και home του sandbox διατηρούν το URL του κεντρικού υπολογιστή.

Αν παραλειφθεί το --theme, το Rudel χρησιμοποιεί το ενεργό θέμα του ιστότοπου του κεντρικού υπολογιστή. Το θέμα πρέπει να είναι εγκατεστημένο στον κεντρικό υπολογιστή. Ένα θυγατρικό θέμα συνοδεύεται από το γονικό του θέμα.

Αντιγράφεται κάθε πίνακας με το πρόθεμα πινάκων του κεντρικού υπολογιστή, συμπεριλαμβανομένων των users και usermeta, εκτός από τους ίδιους τους πίνακες του Rudel. Στην τρέχουσα έκδοση περιλαμβάνονται και οι πίνακες των sandbox που υπάρχουν ήδη, οπότε κάθε νέο sandbox είναι μεγαλύτερο από το προηγούμενο. Δείτε το ζήτημα #3.

Δημιουργία από άλλο sandbox

Κέλυφος
wp rudel create --name=feature-b --clone-from=alpha-3be7

Το νέο sandbox λαμβάνει αντίγραφο κάθε πίνακα με το πρόθεμα του sandbox προέλευσης, συμπεριλαμβανομένων των πινάκων στιγμιότυπων του, καθώς και του θέματός του. Οι κατάλογοι στιγμιότυπων δεν αντιγράφονται, επομένως αυτοί οι πίνακες δεν χρησιμοποιούνται στο νέο sandbox (ζήτημα #12). Όταν ο κατάλογος θέματος προέλευσης είναι αποθετήριο Git, το Rudel δημιουργεί συνδεδεμένο worktree στον κλάδο rudel/{new-id} αντί για απλό αντίγραφο. Το ID προέλευσης καταγράφεται στη νέα εγγραφή.

Μεταδεδομένα κύκλου ζωής

Τα sandbox μπορούν να έχουν μεταδεδομένα για την εκκαθάριση και την ιδιοκτησία:

Κέλυφος
wp rudel create \
  --name=feature-a \
  --owner=dennis \
  --labels=agent,qa \
  --purpose="Test checkout changes" \
  --ttl-days=7

Χρησιμοποιήστε το --protected όταν η αυτοματοποιημένη εκκαθάριση δεν πρέπει να αφαιρεί το sandbox. Δείτε την Πολιτική.

Όρια

Η δημιουργία αποτυγχάνει όταν συμπληρωθούν οι ρυθμίσεις max_sandboxes ή max_disk_mb. Και οι δύο έχουν προεπιλεγμένη τιμή 0, που σημαίνει ότι δεν υπάρχει όριο. Δείτε τη Διαμόρφωση.

Checkouts Git

Κέλυφος
wp rudel create --name=feature-a --git=https://example.test/my-theme.git

Το Rudel δημιουργεί το sandbox, κλωνοποιεί το απομακρυσμένο αποθετήριο στο themes/my-theme μέσα στον κατάλογο sandbox και αλλάζει το checkout στον κλάδο rudel/{id}. Προσθέστε το --type=plugin για να γίνει η κλωνοποίηση στο plugins/my-theme. Αν η κλωνοποίηση αποτύχει, το sandbox παραμένει και εμφανίζεται προειδοποίηση. Δείτε το Git για να μάθετε τι προβάλλει το sandbox από αυτό το checkout.

Διάταξη καταλόγων

Text
wp-content/rudel-environments/{id}/
  themes/       copied theme, plus any Git checkout
  snapshots/    snapshot metadata and theme copies
  logs/ metadata/ tmp/
  wp-cli.yml
  debug.log     when debug logging is active