Μόλις ένα έργο εκτελείται τοπικά, τέσσερις εντολές το μεταφέρουν σε έναν ενεργό ιστότοπο στη φιλοξενία της Zinn Digital®: συνδεθείτε, συνδέστε το έργο με μια υποδοχή φιλοξενίας, διαβάστε τον προκαταρκτικό έλεγχο και κάντε push. Αυτό το άρθρο αναλύει καθεμία από αυτές, τι εμφανίζει στην οθόνη, καθώς και τις εντολές στις οποίες θα καταφύγετε στη συνέχεια — επαναναπτύξεις, ιστορικό αναπτύξεων και αρχεία καταγραφής δόμησης.
Συνδεθείτε με ένα κλειδί API
Δημιουργήστε ένα κλειδί στον πίνακα ελέγχου στην ενότητα Ρυθμίσεις → Κλειδιά API, και στη συνέχεια:
zinnector login
Το κλειδί πληκτρολογείται σε μια προτροπή εισαγωγής — ποτέ δεν γίνεται αποδεκτό στη γραμμή εντολών, ώστε να μην μπορεί να καταλήξει στο ιστορικό του κελύφους σας ή σε μια λίστα διεργασιών. Στο CI, διοχετεύστε το μέσω σωλήνωσης: echo "$ZINN_API_KEY" | zinnector login --profile ci, ή ορίστε το ZINNECTOR_TOKEN και παραλείψτε εντελώς το login. Το κλειδί επαληθεύεται πριν από την αποθήκευσή του και αποθηκεύεται με δικαιώματα αρχείου 600. Η εντολή zinnector whoami --scopes δείχνει σε ποιον οργανισμό είστε συνδεδεμένοι και ποια δικαιώματα φέρει το κλειδί· ένα κλειδί sandbox επισημαίνεται ως τέτοιο.
Συνδέστε το έργο με μια υποδοχή
zinnector link # pick a site from a list
zinnector link example.com --repo acme/site --branch main
Η εντολή link εγγράφει το αναγνωριστικό του ιστοτόπου στο zinnector.json και, εκτός εάν ορίσετε --no-repo, συνδέει το απομακρυσμένο git αποθετήριο του έργου με τον ιστότοπο στην πλατφόρμα, ώστε ένα push να πραγματοποιεί την ανάπτυξή του. Υποβάλετε το zinnector.json: ένας συνάδελφος που κλωνοποιεί το αποθετήριο πραγματοποιεί στη συνέχεια ανάπτυξη στην ίδια θέση χωρίς να χρειάζεται καθοδήγηση. Δεν περιέχει κανένα μυστικό.
Διαβάστε τον προκαταρκτικό έλεγχο
zinnector check
Αυτή είναι η εντολή για την οποία υπάρχει το CLI. Συγκρίνει το έργο σας με την υποδοχή στην οποία πρόκειται να αναπτυχθεί και εμφανίζει κάθε ασυμφωνία — καθώς και κάθε σύγκριση που δεν μπόρεσε να πραγματοποιήσει:
- Έκδοση PHP, με διαφορά κύριας έκδοσης να χαρακτηρίζεται υψηλή, επειδή κατά κανόνα προκαλεί σφάλματα στον ιστότοπο, και μια δευτερεύουσα διαφορά να βαθμολογείται χαμηλότερα, επειδή ο χαρακτηρισμός των πάντων ως κρίσιμων εκπαιδεύει τους χρήστες να αγνοούν την προειδοποίηση.
- Το εάν η υποδοχή μπορεί να μεταβεί στην έκδοση στην οποία δομήσατε το έργο, εάν η PHP της υποδοχής έχει υπερβεί το τέλος του κύκλου ζωής της, και εάν το μηχάνημα έχει εφαρμόσει την έκδοση ή απλώς έχει λάβει τη σχετική οδηγία.
- Το μέγεθος και το πλήθος αρχείων του έργου σας σε σχέση με το περιθώριο δίσκου και inode που απομένει στην πραγματικότητα στην υποδοχή — μια δομή WordPress μπορεί να εξαντλήσει τα αρχεία ενώ παραμένει πολύ κάτω από το όριο δίσκου της.
- Τις εκδόσεις WordPress σε κάθε πλευρά, το εάν η υποδοχή έχει ολοκληρώσει την προετοιμασία, και το εάν είναι συνδεδεμένο ένα αποθετήριο για την πραγματοποίηση push.
Προειδοποιεί· δεν εμποδίζει ποτέ. Κάθε εύρημα μπορεί να παρακαμφθεί με το zinnector push --force, επειδή γνωρίζετε πράγματα για τον δικό σας ιστότοπο που ένα εργαλείο ελέγχου δεν γνωρίζει. Μια σύγκριση που δεν μπόρεσε να πραγματοποιηθεί αναφέρεται ως άγνωστη, ποτέ ως επιτυχής, και η σύνοψη αναφέρει πάντοτε πόσες υπήρξαν. Από προεπιλογή, η τοπική έκδοση PHP είναι αυτή που δηλώνεται στο zinnector.json· το --probe εκκινεί το τοπικό περιβάλλον εκτέλεσης και τη μετρά αντί αυτού. Το --strict τερματίζει με μη μηδενικό κωδικό εξόδου και για τις άγνωστες περιπτώσεις, κάτι που αποτελεί απαίτηση ενός ελέγχου πύλης CI.
Push
zinnector push
Η εντολή push εκτελεί τον προκαταρκτικό έλεγχο, προωθεί τα commit σας, ενεργοποιεί την ανάπτυξη και την παρακολουθεί μέχρι την ολοκλήρωσή της, εμφανίζοντας την τελική κατάσταση και το αναπτυγμένο commit. Το --dry-run εκτελεί τα πάντα εκτός από την ανάπτυξη· το --no-wait την ενεργοποιεί και τερματίζει· το --no-git αναπτύσσει ό,τι διαθέτει ήδη η πλατφόρμα χωρίς να πραγματοποιήσει push. Εάν το αναπτυγμένο commit δεν είναι αυτό που μόλις προωθήθηκε, το επισημαίνει.
Όταν κάτι πάει στραβά
zinnector deploys example.com # deploy history — status, commit, trigger, message
zinnector logs example.com --build # the build log of the most recent deploy
zinnector logs example.com --error # the site's error log
zinnector deploy example.com # redeploy what the platform already has
zinnector ai "why is my deploy failing?"
Το zinnector ai εκτελείται στην πλατφόρμα εντός του δικού σας λογαριασμού, επομένως μπορεί να δει το ίδιο ιστορικό αναπτύξεων και τα ίδια αρχεία καταγραφής. Μέσα από ένα έργο, αποστέλλει τη διάρθρωση του έργου — ονόματα καταλόγων, εκδόσεις και το αναγνωριστικό του ιστοτόπου — και ποτέ περιεχόμενα αρχείων.
Σχετικά