Επιλέξτε πού περιμένει το Taiga μια απόφαση
ΟλοκληρώθηκεΔιαχωρίστε την έγκριση σχεδίου, την εκτέλεση build, την άδεια merge και το deployment. Ρυθμίστε την αυτονομία γύρω από τις αποφάσεις που πρέπει να διατηρεί ο οργανισμός σας.
Εκδότης TaigaΠώς γράφουμε
Ελέγξτε τι κατανοήσατεΟ οργανισμός επιτρέπει αυτόνομο merge, αλλά ένα factory το απενεργοποιεί. Μπορεί ένα προϊόν κάτω από αυτό το factory να το ενεργοποιήσει;Κάντε την άσκηση
Τι θα μάθετε
- Διακρίνετε το αυτόματο build από το αυτόνομο merge.
- Εξηγήστε τα ανώτατα όρια merge, τις προεπιλογές προϊόντος και τις ειδικές επιλογές initiatives.
- Ελέγξτε τους κανόνες branches και τις συνέπειες στο deployment πριν ενεργοποιήσετε τον αυτοματισμό.
Διαχωρίστε τέσσερις αποφάσεις
Η υποθετική υπηρεσία εξοπλισμού έχει τέσσερις διαφορετικές αποφάσεις: αποδοχή του σχεδίου, εκτέλεση του build, merge της αλλαγής και deployment. Μην αντιμετωπίζετε έναν διακόπτη ως εξουσιοδότηση και για τις τέσσερις.
Πριν αλλάξετε την αυτονομία, εξετάστε τι κάνει το pipeline του αποθετηρίου μετά το merge. Αν το merge στο branch εργασίας ενεργοποιεί deployment, ένα αυτόματο merge μπορεί επίσης να ενεργοποιήσει αυτή την υπάρχουσα ροή.
Αποφασίστε αν ένα σχέδιο περιμένει
Η ρύθμιση προϊόντος Build on its own by default ελέγχει αν ένα ολοκληρωμένο σχέδιο προχωρά σε build ή περιμένει έγκριση. Απενεργοποιήστε την όταν τα σχέδια χρειάζονται πρώτα ανθρώπινη απόφαση.
Η ρύθμιση Build on its own ενός initiative μπορεί να αλλάξει αυτή τη συμπεριφορά για το συγκεκριμένο initiative. Εξετάστε τόσο την προεπιλογή όσο και κάθε ειδική επιλογή πριν βάλετε εργασία στην ουρά.
Το Approve ξεκινά το build με την ταυτότητα του ατόμου που εγκρίνει, υπό τους περιορισμούς των τρεχόντων δικαιωμάτων του. Ένα αποτυχημένο σχέδιο δεν ξεκινά build. Η αυτοματοποίηση του build δεν εξουσιοδοτεί από μόνη της το merge του pull request που προκύπτει.
Κατανοήστε την ιεραρχία merge
Το αυτόνομο merge ελέγχεται χωριστά και παραμένει απενεργοποιημένο μέχρι να ενεργοποιηθεί. Η τεκμηριωμένη διασύνδεση υποστηρίζει το GitHub, συμπεριλαμβανομένου του GitHub Enterprise.
| Επίπεδο | Σημασία |
|---|---|
| Οργανισμός | Ανώτατο όριο για το αν επιτρέπεται αυτόνομο merge |
| Factory | Ανώτατο όριο για οτιδήποτε βρίσκεται κάτω από αυτό το factory |
| Προϊόν | Προεπιλογή για initiatives χωρίς ειδική επιλογή |
| Initiative | Η δική του επιλογή Merge on its own μέσα στα ανώτατα όρια |
Η απενεργοποίηση στο ανώτατο επίπεδο οργανισμού ή factory δεν μπορεί να παρακαμφθεί από κατώτερο επίπεδο. Η απενεργοποιημένη προεπιλογή προϊόντος είναι διαφορετική: ένα initiative μπορεί να ενεργοποιήσει το δικό του merge αν το επιτρέπουν τα ανώτατα όρια.
Για την υπηρεσία εξοπλισμού, κρατήστε σαφές το αρχικό πεδίο. Ένα initiative με μικρές συνέπειες μπορεί να έχει διαφορετική επιλογή από μια αλλαγή στους ελέγχους πρόσβασης εργαζομένων, μέσα στα επιτρεπόμενα όρια.
Κάντε τις απαιτούμενες ανασκοπήσεις δεσμευτικές
Το Taiga ρωτά τον πάροχο ελέγχου πηγαίου κώδικα αν μπορεί να γίνει merge το pull request. Η προστασία branch που έχετε ορίζει τους απαιτούμενους ελέγχους, ανασκοπήσεις και άλλες συνθήκες. Το αυτόνομο merge δεν παρακάμπτει αυτούς τους κανόνες.
Αν μια αυτοματοποιημένη ανασκόπηση πρέπει να εμποδίζει το merge, ορίστε το αποτέλεσμά της ως απαιτούμενο status check μέσω των υποστηριζόμενων ρυθμίσεων του αποθετηρίου. Ένα συμβουλευτικό αποτέλεσμα δεν γίνεται υποχρεωτικό επειδή εσείς το περιμένετε.
Ελέγξτε επίσης τις απαιτούμενες ανθρώπινες εγκρίσεις. Ένας επιτυχημένος έλεγχος δεν υποκαθιστά έγκριση που απαιτεί η πολιτική σας. Επιβεβαιώστε τους κανόνες στο πραγματικό branch προορισμού.
Ερμηνεύστε ένα merge που σταμάτησε
Διαβάστε τον λόγο στο initiative. Ένας έλεγχος σε αναμονή, μια έγκριση που λείπει, μια σύγκρουση και ένα ημιτελές σχέδιο χρειάζονται διαφορετικές αποκρίσεις. Το Taiga σταματά επίσης το αυτόνομο merge όταν οι διορθώσεις αλλάζουν τα κριτήρια έτσι ώστε έλεγχοι που απέτυχαν να περάσουν. Ανασκοπήστε απευθείας αυτή την αλλαγή.
Μην αφαιρείτε έναν απαιτούμενο έλεγχο απλώς επειδή εμποδίζει την πρόοδο. Αν ο έλεγχος δεν αναφέρει ποτέ αποτέλεσμα, διορθώστε τις ρυθμίσεις του ή χρησιμοποιήστε την εξουσιοδοτημένη διαδικασία πολιτικής. Εξετάστε το τρέχον commit μετά από κάθε διόρθωση.
Κρατήστε χωριστή την εξουσιοδότηση deployment
Το Taiga GitHub App εκτελεί το αυτόνομο merge και καταγράφεται ως η ταυτότητα που το έκανε. Το pipeline του αποθετηρίου διατηρεί την υπάρχουσα συμπεριφορά deployment.
Σε αυτό το σενάριο, το merge κάνει deploy στο staging. Το production εξακολουθεί να απαιτεί την απόφαση production του οργανισμού και τα αποδεικτικά στοιχεία. Επιβεβαιώστε ότι το pipeline επιβάλλει αυτόν τον διαχωρισμό. Συνεχίστε με την ανασκόπηση παράδοσης.
Κάντε την άσκηση
Η υποθετική υπηρεσία εξοπλισμού χρειάζεται ανθρώπινη ανασκόπηση σχεδίων και pull requests. Το main branch της κάνει deploy στο staging. Γράψτε τη ρύθμιση build, τους απαιτούμενους κανόνες branch, τη ρύθμιση merge και τη χωριστή έγκριση production που χρειάζεται αυτή η διάταξη.
Λήψη φύλλου εργασίας (Markdown)Η κατάργηση αυτής της επιλογής διαγράφει όλη την πρόοδο που έχει αποθηκευτεί σε αυτόν τον browser.
Η πρόοδος παραμένει σε αυτό το πρόγραμμα περιήγησης. Χωρίς λογαριασμό ή παρακολούθηση.