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

runnerhut

Απαντήσεις

Άμεσες απαντήσεις στις ερωτήσεις των μηχανικών για το CI.

Χρέωση και κόστος21

Χρεώνομαι όταν μια εργασία GitHub Actions αποτυγχάνει;Ναι. Χρεώνεστε για τα λεπτά που καταναλώθηκαν μέχρι το σημείο της αποτυχίας, όχι για ένα επιτυχημένο αποτέλεσμα.Είναι τα GitHub Actions δωρεάν για ανοιχτό κώδικα;Ναι, σε τυπικούς δρομείς που φιλοξενούνται από το GitHub για δημόσια αποθετήρια, χωρίς καμία χρέωση.Είναι τα GitHub Actions δωρεάν για ιδιωτικά αποθετήρια;Όχι. Τα ιδιωτικά αποθετήρια λαμβάνουν ένα μηνιαίο επίδομα περιλαμβανόμενων λεπτών βάσει προγράμματος και, στη συνέχεια, χρεώνουν ανά λεπτό.Πληρώνω χρέωση θέσης για διαχειριζόμενους δρομείς;Στο runnerhut, αρ. Η χρέωση είναι ανά υπολογιστικό λεπτό χωρίς χρέωση ανά προγραμματιστή.Πληρώνω για τον χρόνο αναμονής;Όχι. Η χρέωση ξεκινά όταν εκτελείται το πρώτο σας βήμα, όχι όταν η εργασία βρίσκεται στην ουρά.Πληρώνω τόσο για το runner όσο και για τον απομακρυσμένο Docker builder;Ναι, αλλά ο οικοδόμος χρεώνεται μόνο για τα δευτερόλεπτα που κατασκευάζει ενεργά.Πώς χρεώνεται μια ακυρωμένη εργασία;Πληρώνετε για τα λεπτά που έχουν περάσει πριν από την ακύρωση, στρογγυλοποιημένα στην προσαύξηση χρέωσης.Υπάρχει ελάχιστη προσαύξηση χρέωσης;λογαριασμοί runnerhut ανά δευτερόλεπτο με ελάχιστο χρόνο ενός λεπτού ανά εργασία.Πόσο κοστίζουν οι διαχειριζόμενοι δρομείς GitHub Actions;runnerhut Οι δρομείς Linux x64 ξεκινούν από 0,004 $ ανά λεπτό, περίπου το ήμισυ της τιμής καταλόγου του GitHub για το αντίστοιχο μέγεθος.Ποιο είναι το φθηνότερο μέγεθος δρομέα;Το μικρότερο μέγεθος που κρατά την εργασία σας στην κρίσιμη διαδρομή — συνήθως 2 ή 4 vCPU για δοκιμές χνούδι και μονάδας.Το arm64 είναι φθηνότερο από το x64;Ναι. Οι δρομείς arm64 runnerhut διατίθενται περίπου 20% κάτω από το αντίστοιχο μέγεθος x64.Είναι φθηνότερο να τρέχεις λιγότερους, μεγαλύτερους δρομείς;Μόνο εάν ο φόρτος εργασίας σας παραλληλίζεται πραγματικά. Διαφορετικά πληρώνετε περισσότερα ανά λεπτό για πυρήνες που μένουν αδρανείς.Μπορώ να ορίσω ένα όριο δαπανών;Ναι. Το runnerhut υποστηρίζει ανώτατα όρια προϋπολογισμού ανά οργανισμό και ανά αποθετήριο.Τι συμβαίνει όταν εξαντλούνται οι δωρεάν πιστώσεις;Οι εργασίες παύουν να προγραμματίζονται μέχρι να προσθέσετε έναν τρόπο πληρωμής ή να αυξήσετε το όριο.Πώς μπορώ να εκτιμήσω τον λογαριασμό μου στο GitHub Actions;Πολλαπλασιάστε τα μηνιαία λεπτά ανά λειτουργικό σύστημα με την ταχύτητα ανά λεπτό για αυτό το λειτουργικό σύστημα και, στη συνέχεια, προσθέστε χώρο αποθήκευσης για τεχνουργήματα και προσωρινή μνήμη.Πώς μπορώ να προβλέψω τις δαπάνες των δρομέων;Αφιερώστε λίγα λεπτά 90 ημερών ανά ροή εργασίας, εφαρμόστε την ανάπτυξη του ρυθμού συγχώνευσης και προσθέστε ελεύθερο χώρο για αλλαγές μήτρας.Γιατί ο λογαριασμός μου στο GitHub Actions είναι τόσο υψηλός;Συνήθως ένα από τα τέσσερα πράγματα: λεπτά macOS, έκρηξη matrix, καμία ακύρωση συγχρονισμού ή μεγάλοι δρομείς.Πληρώνουν τα δημόσια αποθετήρια για διαχειριζόμενους δρομείς;Σε τυπικούς δρομείς που φιλοξενούνται από το GitHub, όχι. Σε διαχειριζόμενους παρόχους, συμπεριλαμβανομένου του runnerhut, ναι — αλλά είναι διαθέσιμα προγράμματα ανοιχτού κώδικα.Τι κοστίζει η αποθήκευση της κρυφής μνήμης Actions;Το GitHub περιλαμβάνει 10 GB ανά αποθετήριο χωρίς χρέωση και εξάγει πέρα από αυτό. Η κρυφή μνήμη runnerhut είναι απεριόριστη και περιλαμβάνεται.Πώς χρεώνεται ο χώρος αποθήκευσης στιγμιότυπων;Ανά gigabyte-μήνα για το στιγμιότυπο που διατηρείται, ξεχωριστά από τα λεπτά υπολογισμού.Μπορώ να εκτελέσω περισσότερες ταυτόχρονες εργασίες από αυτές που επιτρέπει το πρόγραμμα GitHub μου;Ναι. Ο διαχειριζόμενος συγχρονισμός δρομέων ορίζεται από τον πάροχο δρομέων και όχι από τα όρια φιλοξενούμενου-δρομέα του προγράμματος GitHub.

Απόδοση10

Γιατί οι GitHub Actions είναι αργές;Συνηθέστερα: κοινόχρηστο vCPU, κρύες κρυφές μνήμες, δίσκος συνδεδεμένος στο δίκτυο και χρόνος ουράς πριν καν ξεκινήσει η εργασία.Πόσο γρήγορα ξεκινούν οι δρομείς μετά την ουρά μιας δουλειάς;Οι δρομείς runnerhut ξεκινούν σε περίπου τρία δευτερόλεπτα από μια ζεστή πισίνα.Χρειάζεται να αλλάξω τη ροή εργασίας μου;Όχι. Αλλάξτε την ετικέτα runs-on και αφήστε όλα τα άλλα ως έχουν.Πώς επιλέγω μέγεθος δρομέα;Ξεκινήστε ένα μέγεθος πάνω από τον τρέχοντα δρομέα σας, στη συνέχεια ελέγξτε τη χρήση της CPU και σταματήστε όταν η καμπύλη ισοπεδωθεί.Γιατί οι δουλειές μου κάνουν ουρά η μία πίσω από την άλλη;Έχετε φτάσει σε ένα όριο συγχρονισμού — είτε του σχεδίου σας, είτε της ομάδας δρομέων, είτε μιας ομάδας ταυτόχρονης ροής εργασίας.Γιατί οι δοκιμές Python μου εκτελούνται πιο αργά στο CI από ό,τι τοπικά;Το pytest είναι σειριακό από προεπιλογή και ο φορητός υπολογιστής σας έχει ταχύτερη απόδοση ενός πυρήνα και ζεστή προσωρινή μνήμη συστήματος αρχείων.Γιατί η εγκατάσταση npm είναι αργή στο CI;Το node_modules γράφει δεκάδες χιλιάδες μικρά αρχεία και ο συνδεδεμένος στο δίκτυο δίσκος CI το χειρίζεται άσχημα.Γιατί ο δαίμονας Gradle ξεκινά κάθε τρέξιμο;Κάθε εργασία CI είναι ένα νέο μηχάνημα, επομένως δεν υπάρχει δαίμονας για επαναχρησιμοποίηση — και χωρίς τη μνήμη cache διαμόρφωσης, το Gradle επαναξιολογεί ολόκληρη την κατασκευή.Γιατί η δουλειά μου εμφανίζει υψηλή αναμονή εισόδου/εξόδου;Ο φόρτος εργασίας είναι δεσμευμένος σε δίσκο — συνήθως εγκατάσταση εξάρτησης, εξαγωγή επιπέδου κοντέινερ ή βάση δεδομένων σε κοντέινερ υπηρεσίας.Πόσες θέσεις εργασίας μπορούν να λειτουργήσουν ταυτόχρονα;Εξαρτάται από το σχέδιό σας για δρομείς που φιλοξενούνται από το GitHub και από τη διαμορφωμένη ταυτότητά σας για διαχειριζόμενους δρομείς.

Προσωρινή αποθήκευση38

Γιατί η Cargo ξαναχτίζει τα πάντα;Το κλειδί της κρυφής μνήμης αλλάζει σε κάθε εκτέλεση ή ο στόχος/δεν αποθηκεύεται καθόλου.Γιατί η επαναφορά της προσωρινής μνήμης είναι αργή;Το GitHub μειώνει το εύρος ζώνης της κρυφής μνήμης, επομένως μια κρυφή μνήμη πολλών gigabyte μπορεί να διαρκέσει λίγα λεπτά για να αποκατασταθεί.Πώς μπορώ να γράψω ένα καλό κλειδί κρυφής μνήμης;Κατακερματίστε ακριβώς τα αρχεία που καθορίζουν το αποθηκευμένο περιεχόμενο - συνήθως το αρχείο κλειδώματος - και τίποτα άλλο.Τι είναι τα κλειδιά επαναφοράς;Τα διατεταγμένα προθέματα δοκιμάστηκαν όταν το ακριβές κλειδί της κρυφής μνήμης λείπει, επομένως μπορεί να αποκατασταθεί μια μερική αντιστοίχιση.Γιατί η προσωρινή μνήμη μου χάνει κάθε εκτέλεση;Το κλειδί περιλαμβάνει κάτι που αλλάζει κάθε εκτέλεση — συνήθως github.sha ή μια χρονική σήμανση.Πόσο διαρκούν οι κρυφές μνήμες;Το GitHub εξάγει τις αχρησιμοποίητες κρυφές μνήμες για 7 ημέρες ή νωρίτερα εάν το αποθετήριο υπερβαίνει τα 10 GB.Πώς μπορώ να καθαρίσω μια προσωρινή μνήμη;Διαγράψτε το από τη σελίδα προσωρινής μνήμης Actions του αποθετηρίου ή μέσω του REST API ή του gh CLI.Οι κρυφές μνήμες μεταφέρονται μεταξύ των υποκαταστημάτων;Ένας κλάδος μπορεί να διαβάσει κρυφές μνήμες από τον εαυτό του και από τον κλάδο βάσης του, αλλά όχι από άσχετους κλάδους.Μπορώ να μοιραστώ μια προσωρινή μνήμη μεταξύ των ροών εργασίας;Σε δρομείς που φιλοξενούνται από το GitHub, μόνο εντός του ίδιου αποθετηρίου και εμβέλειας κλάδου. Οι κρυφές μνήμες runnerhut μοιράζονται στις ροές εργασίας στον οργανισμό.Ποιο είναι το όριο μεγέθους της κρυφής μνήμης GitHub Actions;10 GB ανά αποθετήριο, μετά το οποίο αφαιρούνται οι καταχωρήσεις που χρησιμοποιήθηκαν λιγότερο πρόσφατα.Πώς μπορώ να αποθηκευτώ στην προσωρινή μνήμη node_modules;Αποθηκεύστε προσωρινά ~/.npm πληκτρολογημένο στο package-lock.json ή επαναφέρετε το node_modules απευθείας εάν η εγκατάσταση σας είναι ντετερμινιστική.Πώς μπορώ να αποθηκεύσω προσωρινά τις εξαρτήσεις pip;Αποθηκεύστε προσωρινά ~/.cache/pip με πληκτρολόγηση στο request.txt ή αποθηκεύστε προσωρινά ολόκληρο το virtualenv για μεγαλύτερη νίκη.Πώς μπορώ να αποθηκεύω προσωρινά τις μονάδες Go;Cache ~/go/pkg/mod και ~/.cache/go-build με πληκτρολόγηση στο go.sum.Πώς μπορώ να αποθηκεύσω προσωρινά τις εξαρτήσεις Cargo;Προσωρινή αποθήκευση ~/.cargo/registry, ~/.cargo/git και target/ κλειδωμένο στο Cargo.lock.Πώς μπορώ να αποθηκεύσω προσωρινά τις εξαρτήσεις του Maven;Η προσωρινή μνήμη ~/.m2/repository έχει πληκτρολογηθεί σε έναν κατακερματισμό κάθε pom.xml.Πώς μπορώ να αποθηκεύσω προσωρινά εκδόσεις Gradle;Αποθηκεύστε προσωρινά τα ~/.gradle/caches και ~/.gradle/wrapper και ενεργοποιήστε την κρυφή μνήμη κατασκευής και διαμόρφωσης.Πώς μπορώ να αποθηκεύσω προσωρινά πετράδια Bundler;Ο προμηθευτής κρυφής μνήμης/πακέτο κλειδώθηκε στο Gemfile.lock, ώστε οι εγγενείς επεκτάσεις να μεταγλωττίζονται μία φορά.Πώς μπορώ να αποθηκεύσω προσωρινά τις εξαρτήσεις του Composer;Cache ~/.composer/cache πληκτρολογημένη στο composer.lock.Πώς μπορώ να αποθηκεύσω προσωρινά τα CocoaPods;Cache Pods/ και ~/Library/Caches/CocoaPods πληκτρολογημένα στο Podfile.lock.Πώς μπορώ να αποθηκεύσω προσωρινά τις εξαρτήσεις του Swift Package Manager;Cache .build και ~/Library/Caches/org.swift.swiftpm πληκτρολογήθηκε στο Package.resolved.Πώς μπορώ να αποθηκεύσω προσωρινά το Yarn Berry;Cache .yarn/cache και .yarn/install-state.gz πληκτρολογημένα στο yarn.lock.Πώς μπορώ να αποθηκεύω προσωρινά περιβάλλοντα UV ή Poetry;Προσωρινή αποθήκευση ~/.cache/uv ή ~/.cache/pypoetry πληκτρολογημένη στο lockfile, συν τον κατάλογο .venv.Πώς μπορώ να αποθηκεύσω προσωρινά τα προγράμματα περιήγησης Playwright;Προσωρινή αποθήκευση ~/.cache/ms-playwright πληκτρολογήθηκε στην έκδοση Playwright από το lockfile σας.Πώς μπορώ να αποθηκεύσω τα επίπεδα Docker;Χρησιμοποιήστε ένα απομακρυσμένο πρόγραμμα δημιουργίας που διατηρεί την προσωρινή μνήμη τοπικά ή πραγματοποιήστε εξαγωγή σε μητρώο με cache-to και cache-from.Η προσωρινή αποθήκευση λειτουργεί μέσα σε ένα κοντέινερ;Ναι, αλλά οι διαδρομές μέσα στο κοντέινερ διαφέρουν από τις διαδρομές στον κεντρικό υπολογιστή, επομένως τα κλειδιά κρυφής μνήμης πρέπει να αναφέρονται σε διαδρομές κοντέινερ.Οι κρυφές μνήμες λειτουργούν σε όλες τις αρχιτεκτονικές;Όχι. Τα μεταγλωττισμένα τεχνουργήματα για το x64 δεν ισχύουν στο arm64, επομένως η αρχιτεκτονική πρέπει να είναι μέρος του κλειδιού.Οι κρυφές μνήμες λειτουργούν σε προγράμματα εκτέλεσης των Windows;Ναι, αλλά τα διαχωριστικά μονοπατιών και η ευαισθησία πεζών-κεφαλαίων διαφέρουν, επομένως τα κλειδιά και οι διαδρομές χρειάζονται χειρισμό ειδικά για τα Windows.Πώς μπορώ να διατηρήσω μια κρυφή μνήμη επιπέδου Docker μεταξύ των αιτημάτων έλξης;Χρησιμοποιήστε ένα μόνιμο απομακρυσμένο πρόγραμμα δημιουργίας — η κρυφή μνήμη του δεν έχει εμβέλεια σε κλάδο.Μπορώ να αποθηκεύσω προσωρινά μια ενσωματωμένη εικόνα αντί να αναδημιουργήσω;Ναι — ωθήστε το σε ένα μητρώο με ετικέτα κατακερματισμού περιεχομένου και τραβήξτε το όταν οι είσοδοι παραμένουν αμετάβλητες.Μπορώ να διατηρήσω ζεστή μια βάση δεδομένων μεταξύ των εργασιών;Όχι με σέρβις κοντέινερ, που καταστρέφονται με την εργασία. Αντ' αυτού, φορτώστε μια ένδειξη προ-μετεγκατάστασης σχήματος.Μπορώ να διατηρήσω το Xcode DerivedData μεταξύ των εκτελέσεων;Ναι. Persist ~/Library/Developer/Xcode/DerivedData — είναι η μεγαλύτερη μεμονωμένη νίκη για το iOS CI.Οι δρομείς στιγμιοτύπων αντικαθιστούν τις ενέργειες/την προσωρινή μνήμη;Μπορούν. Ένα στιγμιότυπο επαναφέρει ολόκληρη την κατάσταση του μηχανήματος, επομένως το βήμα εγκατάστασης εξαφανίζεται αντί να γίνεται πιο γρήγορο.Τι μεταφέρεται σε ένα στιγμιότυπο;Ολόκληρο το σύστημα αρχείων σε στιγμιότυπο — εγκατεστημένα πακέτα, ενσωματωμένες επεκτάσεις, κατάλογοι αλυσίδας εργαλείων και ζεστή προσωρινή μνήμη σελίδων.Πώς μπορώ να ακυρώσω ένα στιγμιότυπο;Πληκτρολογήστε το στον κατακερματισμό του αρχείου κλειδώματος, ώστε μια αλλαγή εξάρτησης να ενεργοποιεί αυτόματα μια ανακατασκευή.Πόσο διαρκούν τα στιγμιότυπα;14 ημέρες από προεπιλογή στο runnerhut, και στη συνέχεια ανακατασκευάστηκε στην επόμενη χρήση.Μπορώ να κάνω στιγμιότυπο σε έναν κλάδο χαρακτηριστικών;Ναι, και τα στιγμιότυπα κλάδων είναι απομονωμένα μεταξύ τους.Τι είναι οι δρομείς στιγμιότυπου;Οι δρομείς που εκκινούν από μια εικόνα συστήματος αρχείων που καταγράφηκαν μετά την εγκατάσταση των εξαρτήσεων σας, επομένως η εγκατάσταση παραλείπεται εντελώς.Λειτουργούν τα στιγμιότυπα σε δρομείς macOS;Ναι, και είναι ιδιαίτερα πολύτιμα εκεί, επειδή το CocoaPods και το DerivedData αργούν να αναδημιουργηθούν.

βραχίονας6412

Μπορεί το GitHub Actions να εκτελέσει το arm64;Ναί. Το GitHub προσφέρει τους δρομείς arm64 σε πληρωμένα προγράμματα και οι διαχειριζόμενοι πάροχοι, συμπεριλαμβανομένου του runnerhut τους προσφέρουν σε όλα τα προγράμματα.Μπορώ να δημιουργήσω εικόνες arm64 σε ένα x64 runner;Ναι, με το QEMU — αλλά είναι 5–40× πιο αργό από την εγγενή κατασκευή.Τι αλλάζει όταν μετακινούμαι από x64 σε arm64;Οι εγγενείς μονάδες, οι τροχοί Python και οποιαδήποτε διάταξη x86 χρειάζονται υποστήριξη aarch64. Οι περισσότερες mainstream εξαρτήσεις το έχουν τώρα.Μπορώ να εκτελέσω εργασίες arm64 και x64 στην ίδια ροή εργασίας;Ναι. Χρησιμοποιήστε μια μήτρα με διαφορετική ετικέτα δρομέα ανά αρχιτεκτονική.Οι δρομείς arm64 υποστηρίζουν το buildx;Ναι, και στο εγγενές υλικό arm64 το buildx παράγει εικόνες arm64 χωρίς εξομοίωση.Μπορώ να εκτελέσω 32-bit ARM builds σε runners arm64;Ναι, μέσω cross-compilation με μια αλυσίδα εργαλείων armhf ή με υποστήριξη multilib όπου είναι διαθέσιμη.Πώς μπορώ να εκτελέσω δοκιμές ολοκλήρωσης του arm64;Εκτελέστε ολόκληρη την εργασία σε έναν εγγενή δρομέα arm64, συμπεριλαμβανομένων τυχόν κοντέινερ σέρβις, τα οποία πρέπει να έχουν εικόνες arm64.Ποια μεγέθη δρομέων arm64 είναι διαθέσιμα;Το runnerhut προσφέρει 2 έως 64 runners vCPU arm64 σε Ubuntu 22.04 και 24.04.Οι δρομείς του arm64 χρησιμοποιούν διαφορετικό κατάλογο εργασίας;Όχι. Οι διαδρομές ταιριάζουν με τις εικόνες x64, επομένως οι ροές εργασίας μεταφέρονται χωρίς αλλαγή.Πώς μπορώ να δημιουργήσω ένα δυαδικό αρχείο Rust για πολλούς στόχους;Χρησιμοποιήστε έναν πίνακα με έναν εγγενή δρομέα ανά στόχο, αντί να συνδυάσετε τα πάντα σε ένα μηχάνημα.Μπορεί το GitHub Actions να δημιουργήσει εικόνες πολλαπλών τόξων;Ναι — είτε με QEMU σε έναν δρομέα, είτε εγγενώς σε δρομείς ανά αρχιτεκτονική και συγχωνευμένο σε μια λίστα δήλωσης.Είναι πιο γρήγορο το QEMU ή το native arm64;Native, με συντελεστή 5 έως 40 ανάλογα με το πόσο μεταγλωττίζεται η έκδοση.

macOS και iOS15

Οι δρομείς GitHub Actions υποστηρίζουν macOS;Ναι, τόσο οι πάροχοι που φιλοξενούνται από το GitHub όσο και οι διαχειριζόμενοι πάροχοι προσφέρουν προγράμματα εκτέλεσης macOS σε πυρίτιο της Apple.Μπορώ να δημιουργήσω εφαρμογές iOS χωρίς πρόγραμμα λειτουργίας Mac;Όχι. Το Xcode εκτελείται μόνο σε macOS, επομένως μια έκδοση iOS απαιτεί πρόγραμμα εκτέλεσης macOS.Είναι προεγκατεστημένο το Xcode σε macOS runners;Ναι. Οι εικόνες runnerhut αποστέλλουν πολλές εκδόσεις Xcode με αντίστοιχα εργαλεία γραμμής εντολών.Πώς μπορώ να επιλέξω μια έκδοση Xcode;Εκτελέστε το sudo xcode-select -s /Applications/Xcode_16.4.app πριν από τα βήματα κατασκευής σας.Ποιες εκδόσεις Xcode είναι διαθέσιμες;Οι εικόνες του runnerhut macOS 15 διαθέτουν Xcode 16.0, 16.2 και 16.4. Οι εικόνες του macOS 14 διαθέτουν 15.2 και 15.4.Ποιες εκδόσεις macOS υποστηρίζονται;Το runnerhut προσφέρει εικόνες macOS 14 και macOS 15 σε πυρίτιο της Apple.Υποστηρίζει το GitHub Actions το πυρίτιο της Apple;Ναι. Τόσο οι δρομείς macOS που φιλοξενούνται από το GitHub όσο και οι διαχειριζόμενοι δρομείς λειτουργούν τώρα με πυρίτιο της Apple.Πόσο δίσκο έχουν οι δρομείς macOS;Οι runnerhut macOS runner παρέχουν 250 GB έως 1 TB NVMe ανάλογα με το μέγεθος.Ποιοι χρόνοι εκτέλεσης προσομοιωτών αποστέλλονται σε δρομείς macOS;iOS 17.5 έως 18.4, συν χρόνους εκτέλεσης watchOS, tvOS και visionOS.Μπορώ να χρησιμοποιήσω το Docker σε δρομείς macOS;Μόνο μέσω Linux VM, η οποία είναι αργή. Αντ' αυτού, εκτελέστε φόρτους εργασίας Docker σε προγράμματα εκτέλεσης Linux.Μπορώ να εκτελέσω macOS runners στην ΕΕ;Ναι. Το runnerhut εκμεταλλεύεται τη χωρητικότητα του macOS σε περιοχές της ΕΕ για απαιτήσεις παραμονής δεδομένων.Μπορώ να εκτελέσω εκδόσεις Android και iOS σε μία ροή εργασίας;Ναι — χρησιμοποιήστε μια μήτρα με μια εφαρμογή macOS για iOS και μια εφαρμογή Linux για Android.Πώς μπορώ να επιταχύνω τις επαναλαμβανόμενες κατασκευές Xcode;Διατηρήστε τα Παράγωγα Δεδομένα μεταξύ των εκτελέσεων και καρφιτσώστε την έκδοση Xcode.Πώς εκτελώ παράλληλα δοκιμές iOS;Θραύσμα ανά δοκιμαστικό στόχο ή κατηγορία δοκιμής σε πολλούς προσομοιωτές σε έναν μεγάλο δρομέα macOS.Πώς μπορώ να συμβολαιογραφήσω μια εφαρμογή macOS στο CI;Χρησιμοποιήστε το notarytool με ένα κλειδί API Connect App Store που είναι αποθηκευμένο ως μυστικό.

Windows11

Μπορεί το GitHub Actions να εκτελεί εκδόσεις των Windows;Ναι. Τα προγράμματα εκτέλεσης του Windows Server είναι διαθέσιμα τόσο από το GitHub όσο και από διαχειριζόμενους παρόχους.Μπορώ να εκτελέσω εκδόσεις Windows Server 2022;Ναι. Το runnerhut προσφέρει εικόνες Windows Server 2022 και 2025.Ποιες εκδόσεις των Windows υποστηρίζονται;Windows Server 2022 και Windows Server 2025.Είναι προεγκατεστημένο το Visual Studio;Ναί. Το Build Tools για το 2022 και το 2025 αποστέλλεται με τους φόρτους εργασίας C++, .NET desktop, ASP.NET και UWP.Πώς μπορώ να εγκαταστήσω επιπλέον στοιχεία SDK των Windows;Χρησιμοποιήστε το vs_installer.exe modify με --add και το αναγνωριστικό στοιχείου.Γιατί τα προγράμματα εκτέλεσης των Windows είναι πιο αργά στην εκκίνηση;Τα Windows εκκινούν πιο αργά και το Defender σαρώνει όλα όσα γράφει το ταμείο.Μπορώ να εκτελέσω το Docker σε προγράμματα εκτέλεσης των Windows;Ναι, για κοντέινερ Windows. Τα κοντέινερ Linux απαιτούν ένθετη εικονικοποίηση.Τα προγράμματα εκτέλεσης των Windows υποστηρίζουν ένθετη εικονικοποίηση;Στο runnerhut, ναι σε εικόνες και μεγέθη Windows Server 2025 που εκθέτουν το Hyper-V.Ποιο είναι το μικρότερο μέγεθος runner των Windows;4 vCPU. Τα μικρότερα μεγέθη ξοδεύουν υπερβολικά μεγάλο μέρος της εργασίας στα γενικά έξοδα του λειτουργικού συστήματος για να είναι χρήσιμα.Μπορώ να εκτελέσω δοκιμές παράλληλα στα Windows;Ναι. Το dotnet test --parallel και το MSBuild -m χρησιμοποιούν πολλαπλούς πυρήνες.Πώς μπορώ να εκτελέσω σενάρια PowerShell;Ορίστε το κέλυφος: pwsh στο βήμα για το PowerShell Core ή το κέλυφος: powershell για το Windows PowerShell 5.1.

Docker17

Πώς μπορώ να μειώσω τον χρόνο τραβήγματος της εικόνας;Χρησιμοποιήστε μια προσωρινή μνήμη pull-through μητρώου στο ίδιο δίκτυο με το πρόγραμμα εκτέλεσης.Πώς μπορώ να επαναφέρω μια κρυφή μνήμη δημιουργίας Docker;Εκτελέστε το docker buildx prune στο builder ή αναδημιουργήστε το παράδειγμα του builder.Οι απομακρυσμένοι κατασκευαστές υποστηρίζουν εκδόσεις πολλαπλών πλατφορμών;Ναι. Το runnerhut εκτελεί ξεχωριστά προγράμματα δημιουργίας amd64 και arm64 και συγχωνεύει τα αποτελέσματα.Πώς μπορώ να προωθήσω μια λίστα δήλωσης;Δημιουργήστε κάθε αρχιτεκτονική ανά σύνοψη και, στη συνέχεια, συνδυάστε τα με τα εργαλεία εικόνας docker buildx που δημιουργούν.Γιατί η κατασκευή του Docker μου είναι αργή;Κρυφή κρυφή μνήμη στρώματος, προσωρινή μνήμη που μεταφέρεται μέσω του δικτύου ή βραχίονας 64 που έχει δημιουργηθεί υπό εξομοίωση.Γιατί εξαντλείται ο δίσκος του Docker;Οι δρομείς που φιλοξενούνται στο GitHub έχουν περίπου 14 GB δωρεάν, τα οποία οι μεγάλες εικόνες και η κρυφή μνήμη στρώματος εξαντλούνται γρήγορα.Γιατί μια ενημέρωση βασικής εικόνας ακυρώνει τα πάντα;Κάθε επίπεδο μετά το FROM εξαρτάται από τη βασική σύνοψη της εικόνας, επομένως μια νέα βάση ακυρώνει όλα αυτά.Ποια είναι η διαφορά μεταξύ cache-from και cache-to;cache-from εισάγει μια υπάρχουσα κρυφή μνήμη στρώματος. cache-to εξάγει τη μνήμη cache που παράγεται από αυτήν την έκδοση.Χρειάζομαι το buildx;Για εκδόσεις πολλαπλών πλατφορμών, προσαρτήσεις κρυφής μνήμης ή απομακρυσμένες συσκευές δημιουργίας, ναι. Για μια απλή μονότοξη κατασκευή, όχι.Τι είναι ένα απομακρυσμένο πρόγραμμα δημιουργίας Docker;Ένα μόνιμο στιγμιότυπο BuildKit στο οποίο συνδέεται η εργασία σας, το οποίο διατηρεί τη μνήμη cache του επιπέδου στον δικό του δίσκο.Πώς χρεώνεται ένας απομακρυσμένος κατασκευαστής;Ανά δευτερόλεπτο ενεργού χρόνου κατασκευής, ξεχωριστά από τα λεπτά δρομέα.Μπορούν δύο δουλειές να μοιράζονται έναν οικοδόμο;Ναι. Τα σκέλη μήτρας και οι ξεχωριστές ροές εργασίας μπορούν να συνδεθούν στο ίδιο πρόγραμμα δημιουργίας και να μοιράζονται την προσωρινή μνήμη του.Πώς χτίζω και πιέζω σε ένα βήμα;Χρησιμοποιήστε docker/build-push-action με push: true.Πώς χρησιμοποιώ το Docker Bake;Καθορίστε στόχους στο docker-bake.hcl και εκτελέστε το docker buildx bake σε ένα βήμα.Πώς μπορώ να ελέγξω την ταυτότητα σε ένα ιδιωτικό μητρώο;Χρησιμοποιήστε docker/login-action με διακριτικό ή OIDC για μητρώα cloud.Μπορώ να εκτελέσω το Docker Compose;Ναι. Το Compose v2 είναι προεγκατεστημένο. χρησιμοποιήστε το docker compose up -d --περιμένετε ώστε τα βήματα να μην ανταποκρίνονται στην εκκίνηση.Μπορώ να χρησιμοποιήσω το Podman αντί για το Docker;Ναι. Το Podman είναι διαθέσιμο και είναι σε μεγάλο βαθμό συμβατό με CLI με το Docker.

Ασφάλεια19

Είναι ασφαλείς οι δρομείς στιγμιοτύπων για δημόσια αποθετήρια;Μόνο εάν τα στιγμιότυπα λαμβάνονται από αξιόπιστα υποκαταστήματα και ποτέ από αιτήματα έλξης από πιρούνι.Πώς δημιουργώ ένα SBOM;Ενεργοποιήστε το buildx's sbom: true output ή εκτελέστε το syft στην ενσωματωμένη εικόνα.Πώς μπορώ να επισυνάψω την προέλευση της κατασκευής;Χρησιμοποιήστε ενέργειες/βεβαίωση-κατασκευή-προέλευση ή προέλευση του buildx: αληθινή βεβαίωση.Πώς μεταβιβάζω μυστικά σε μια κατασκευή Docker;Χρησιμοποιήστε τα μυστικά κατασκευής του BuildKit με --secret, ποτέ ARG ή ENV.Είναι ασφαλείς οι δρομείς του GitHub Actions;Οι διαχειριζόμενοι δρομείς που φιλοξενούνται από το GitHub και οι αξιόπιστοι δρομείς είναι εφήμερα VM μιας χρήσης, που είναι το σωστό μοντέλο απομόνωσης.Οι δρομείς αποθηκεύουν τον πηγαίο κώδικα μου;Μόνο για τη διάρκεια της εργασίας. Το runnerhut καταστρέφει το VM και σκουπίζει τον δίσκο του όταν τελειώσει η εργασία.Μπορεί η πλατφόρμα του δρομέα να δει τα μυστικά μου;Τα μυστικά αποκρυπτογραφούνται στη μνήμη του δρομέα για να χρησιμοποιηθούν, οπότε οποιαδήποτε πλατφόρμα δρομέα θα μπορούσε τεχνικά.Πώς μπορώ να ορίσω δικαιώματα GITHUB_TOKEN;Προσθέστε ένα μπλοκ αδειών σε επίπεδο ροής εργασίας ή εργασίας και παραχωρήστε μόνο τα πεδία που απαιτούνται.Πώς μπορώ να ελέγξω την ταυτότητα του AWS με το OIDC;Διαμορφώστε το GitHub ως πάροχο OIDC στο IAM και χρησιμοποιήστε aws-actions/configure-aws-credentials με έναν ρόλο.Αλλάζουν οι διαχειριζόμενοι δρομείς τις άδειές μου στο GitHub;Όχι. Οι εργασίες εκτελούνται με το ίδιο GITHUB_TOKEN και τα ίδια δικαιώματα με τους δρομείς που φιλοξενούνται στο GitHub.Μπορώ να περιορίσω ποια αποθετήρια χρησιμοποιούν τους runner μου;Ναι, με ομάδες δρομέων που απευθύνονται σε συγκεκριμένους οργανισμούς ή αποθετήρια.Είναι το runnerhut SOC 2 συμβατό;Το runnerhut διατηρεί το SOC 2 Type 2, με την αναφορά διαθέσιμη στο NDA.Πού αποθηκεύονται τα δεδομένα κατασκευής μου;Στην περιοχή που επιλέγετε. Ο υπολογισμός, η κρυφή μνήμη, τα αρχεία καταγραφής και οι μετρήσεις είναι όλα καρφιτσωμένα στην ίδια περιοχή.Μπορώ να κρατήσω κατασκευές μόνο στην ΕΕ;Ναι. Οι αναπτύξεις μόνο για την ΕΕ καρφιτσώνουν υπολογισμούς, κρυφή μνήμη, αρχεία καταγραφής και μετρήσεις σε περιοχές της ΕΕ.Μπορώ να περιορίσω την εξερχόμενη κυκλοφορία;Ναι. Οι πολιτικές εξόδου απορρίπτονται από προεπιλογή και επιτρέπουν μόνο τους προορισμούς που παραθέτετε.Πώς μπορώ να ελέγξω τις αλλαγές διαμόρφωσης του runner;Το αρχείο καταγραφής ελέγχου καταγράφει τον παράγοντα, τη χρονική σήμανση, την IP πηγής και τις τιμές πριν/μετά για κάθε αλλαγή διαμόρφωσης.Πού τρέχουν σωματικά οι διαχειριζόμενοι δρομείς;Στα κέντρα δεδομένων του παρόχου ή στον δικό σας λογαριασμό cloud στο BYOC.Τι συμβαίνει με τους δίσκους εκτέλεσης μετά από μια εργασία;Στο runnerhut σκουπίζονται κρυπτογραφικά και το VM καταστρέφεται.Διατηρούν οι δρομείς κατάσταση μεταξύ των εργασιών;Οι εφήμεροι δρομείς όχι. Το κάνουν οι επίμονοι αυτο-φιλοξενούμενοι δρομείς, κάτι που αποτελεί κίνδυνο για την ασφάλεια των δημόσιων αποθετηρίων.

Φέρτε το δικό σας σύννεφο18

Μπορούν οι δρομείς να έχουν πρόσβαση στο ιδιωτικό μου δίκτυο;Ναι, μέσω δρομέων BYOC στο VPC σας ή ενός δικτύου πλέγματος όπως το Tailscale.Μπορούν οι δρομείς να τρέχουν στον δικό μου λογαριασμό cloud;Ναι. Το BYOC αναπτύσσει δρομείς στον λογαριασμό σας AWS, GCP ή Azure ενώ το επίπεδο ελέγχου παραμένει διαχειριζόμενο.Τι δημιουργεί το runnerhut στον λογαριασμό μου στο cloud;Μια ομάδα αυτόματης κλιμάκωσης, ένας κάδος κρυφής μνήμης, μια προσωρινή μνήμη pull-through μητρώου, ένας ρόλος IAM με εμβέλεια και ένα τελικό σημείο VPC.Τι δικαιώματα AWS χρειάζεται το BYOC;Δικαιώματα διαχείρισης της δικής της ομάδας αυτόματης κλιμάκωσης, του κάδου της κρυφής μνήμης και του ρόλου της παρουσίας — τίποτα ευρύτερο.Μπορώ να χρησιμοποιήσω το δικό μου VPC;Ναι. Παρέχετε το VPC και τα αναγνωριστικά υποδικτύου και οι runners τοποθετούνται εκεί.Μπορούν οι δρομείς του BYOC να φτάσουν σε εσωτερικές υπηρεσίες;Ναι — αυτός είναι ο κύριος λόγος για να χρησιμοποιήσετε το BYOC. Κάθονται μέσα στο δίκτυό σας με κανονική δρομολόγηση.Χρειάζονται οι δρομείς BYOC μια πύλη NAT;Χρειάζονται εξερχόμενο διαδίκτυο για τραβήγματα εικόνων και πακέτων, που συνήθως σημαίνει πύλη NAT.Μπορούν οι δρομείς BYOC να τρέξουν σε ιδιωτικό υποδίκτυο;Ναι, και θα έπρεπε. Η εξερχόμενη πρόσβαση περνά από τα τελικά σημεία NAT ή VPC.Μπορώ να επισυνάψω έναν ρόλο IAM σε έναν δρομέα BYOC;Ναι, μέσω ενός προφίλ παρουσίας — έτσι οι εργασίες λαμβάνουν διαπιστευτήρια χωρίς κανένα αποθηκευμένο μυστικό.Λειτουργεί το BYOC με το IMDSv2;Ναι, και το IMDSv2 επιβάλλεται από προεπιλογή.Μπορώ να εκτελέσω το BYOC σε πολλές περιοχές;Ναι. Αναπτύξτε τη μονάδα ανά περιοχή και επισημάνετε τους δρομείς ανά περιοχή.Υποστηρίζει το BYOC προσαρμοσμένες εικόνες;Ναι. Παρέχετε τη δική σας εικόνα AMI ή μηχανής με τα εργαλεία σας.Το BYOC υποστηρίζει τα Windows;Ναι σε AWS και Azure. Η υποστήριξη των Windows GCP είναι πιο περιορισμένη.Το BYOC υποστηρίζει τοπικό SSD GCP;Ναι, σε οικογένειες μηχανών που το προσφέρουν.Πώς λειτουργεί η χρέωση BYOC;Πληρώνετε στον πάροχο cloud για υπολογισμούς και δίκτυο και στο runnerhut μειωμένη χρέωση επιπέδου ελέγχου.Πώς προσθέτω ετικέτες σε πόρους BYOC;Ορίστε ετικέτες κατανομής κόστους στη μονάδα Terraform. διαδίδονται σε κάθε δημιουργημένο πόρο.Πώς μπορώ να διαγράψω μια στοίβα BYOC;Στραγγίστε τους δρομείς και, στη συνέχεια, καταστρέψτε τη μονάδα.Μπορώ να ελέγξω την έξοδο σε δρομείς BYOC;Ναι, με τις ομάδες ασφαλείας, τα NACL και την πολιτική εξόδου runnerhut μαζί.

Ροές εργασιών30

Πόσες θέσεις εργασίας μπορεί να κάνει ένα matrix;Το GitHub περιορίζει μια μεμονωμένη μήτρα σε 256 θέσεις εργασίας ανά εκτέλεση ροής εργασίας.Πώς μπορώ να αναπαράγω μια αποτυχία CI τοπικά;Αντιστοιχίστε την εικόνα του δρομέα και, στη συνέχεια, το SSH σε ζωντανό δρομέα, εάν η αποτυχία εμφανίζεται μόνο στο CI.Μπορώ να κάνω SSH σε δρομέα;Ναι. Το runnerhut υποστηρίζει το άνοιγμα μιας περιόδου λειτουργίας εντοπισμού σφαλμάτων σε μια εργασία που εκτελείται με ένα εξουσιοδοτημένο κλειδί SSH.Μπορώ να συνδυάσω δρομείς που φιλοξενούνται από το GitHub και διαχειριζόμενους;Ναι. Η εκτέλεση είναι ανά εργασία, επομένως διαφορετικές εργασίες σε μια ροή εργασίας μπορούν να χρησιμοποιούν διαφορετικούς παρόχους.Πώς μπορώ να αλλάξω τον δρομέα;Επεξεργαστείτε την τιμή εκτέλεσης για την εργασία. Τίποτα άλλο δεν χρειάζεται να αλλάξει.Πώς μπορώ να εκτελέσω μια εργασία μόνο όταν αλλάζουν αρχεία;Χρησιμοποιήστε μονοπάτια ή μονοπάτια-αγνοήστε στη σκανδάλη ή μια ενέργεια ανίχνευσης αλλαγών για καλύτερο έλεγχο.Πώς μπορώ να εκτελέσω μια ροή εργασίας με μη αυτόματο τρόπο;Προσθέστε έναν κανόνα ετικέτας ροής_διανομής, προαιρετικά με πληκτρολογημένες εισόδους.Πώς μπορώ να εκτελέσω εργασίες βάσει χρονοδιαγράμματος;Χρησιμοποιήστε την ενεργοποίηση χρονοδιαγράμματος με σύνταξη cron, σε UTC.Πώς μπορώ να ακυρώσω τις αντικατασταθείσες εκτελέσεις;Ορίστε μια ομάδα ταυτόχρονης πληκτρολόγησης στην αναφορά με ακύρωση σε εξέλιξη: αληθές.Πώς μπορώ να περιορίσω μια ροή εργασίας σε μία εκτέλεση κάθε φορά;Χρησιμοποιήστε ένα όνομα ομάδας σταθερής συγχρονισμού με ακύρωση σε εξέλιξη: false.Τι συμβαίνει όταν δύο ροές εργασίας μοιράζονται μια ομάδα ταυτόχρονης χρήσης;Σειριακά - το δεύτερο περιμένει ή ακυρώνει το πρώτο ανάλογα με την ακύρωση σε εξέλιξη.Πώς μπορώ να ορίσω ένα χρονικό όριο εργασίας;Προσθέστε timeout-λεπτά στην εργασία. Η προεπιλογή είναι έξι ώρες.Πώς μπορώ να δοκιμάσω ξανά ένα αποτυχημένο βήμα;Χρησιμοποιήστε μια ενέργεια επανάληψης δοκιμής ή τυλίξτε την εντολή σε έναν βρόχο επανάληψης δοκιμής φλοιού.Πώς μπορώ να επαναχρησιμοποιήσω μια ροή εργασίας σε αποθετήρια;Δημοσιεύστε μια επαναχρησιμοποιήσιμη ροή εργασίας και καλέστε την με workflow_call.Πώς γράφω μια σύνθετη ενέργεια;Δημιουργήστε το action.yml με runs.using: composite και μια λίστα βημάτων.Πώς μπορώ να χρησιμοποιήσω τη μήτρα συμπερίληψη και εξαίρεση;περιλαμβάνει προσθέτει ή επεκτείνει συνδυασμούς. exclude τα αφαιρεί από το παραγόμενο προϊόν.Πώς μπορώ να παραλείψω το CI σε μια δέσμευση;Προσθέστε το [skip ci] στο μήνυμα δέσμευσης.Πώς γράφω μια περίληψη εργασίας;Προσθήκη Markdown στο $GITHUB_STEP_SUMMARY.Πώς μπορώ να εκτελέσω μια βάση δεδομένων στο CI;Δηλώστε το ως κοντέινερ υπηρεσιών με υγειονομικό έλεγχο.Πώς μπορώ να δημοσιεύσω ένα πακέτο;Χρησιμοποιήστε την αξιόπιστη δημοσίευση OIDC όπου την υποστηρίζει το μητρώο, διαφορετικά ένα διακριτικό εμβέλειας σε ένα μυστικό περιβάλλοντος.Πώς μοιράζομαι δεδομένα μεταξύ εργασιών;Ανεβάστε ένα τεχνούργημα σε μια εργασία και κατεβάστε το στην επόμενη ή χρησιμοποιήστε εξόδους εργασίας για μικρές τιμές.Πώς μπορώ να σταματήσω μια αργή ανάπτυξη αποκλεισμού ροής εργασίας;Διαχωρίστε τους απαιτούμενους ελέγχους από τους συμβουλευτικούς και σημειώστε μόνο τις γρήγορες, αξιόπιστες εργασίες όπως απαιτείται.Πώς εκτελώ τις δοκιμές του προγράμματος περιήγησης χωρίς κεφάλι;Χρησιμοποιήστε τη σημαία χωρίς κεφαλή για τον δρομέα σας ή το xvfb-run για εργαλεία που απαιτούν οθόνη.Πώς μπορώ να εκτελέσω δοκιμές ανιχνευτή αγώνα Go;Run go test-race. Αναμένετε περίπου 2–10× πιο αργή εκτέλεση και μεγαλύτερη χρήση μνήμης.Ποια είναι η διαφορά μεταξύ μιας δουλειάς και ενός βήματος;Μια εργασία εκτελείται σε έναν δρομέα και περιέχει βήματα. τα βήματα εκτελούνται διαδοχικά στον ίδιο χώρο εργασίας.Ποια είναι η διαφορά μεταξύ των δρομέων που φιλοξενούνται από το GitHub και των αυτο-φιλοξενούμενων δρομέων;Το GitHub-hosted είναι διαχειριζόμενο, εφήμερο και χρεώνεται ανά λεπτό. Τα αυτο-φιλοξενούμενα είναι δικά σας για λειτουργία, στο υλικό σας.Ποια λειτουργικά συστήματα μπορούν να τρέξουν το GitHub Actions;Linux, Windows και macOS, σε x64 και arm64 ανάλογα με τον πάροχο.Πόσο καιρό διατηρούνται τα τεχνουργήματα;90 ημέρες από προεπιλογή, με δυνατότητα διαμόρφωσης ανά αποθετήριο ή ανά μεταφόρτωση έως μία ημέρα.Πώς μπορώ να εντοπίσω σφάλματα σε μια αποτυχημένη εργασία;Ενεργοποιήστε την καταγραφή βήματος εντοπισμού σφαλμάτων, προσθέστε μια σύνοψη εργασίας ή ανοίξτε μια περίοδο λειτουργίας SSH στο πρόγραμμα εκτέλεσης.Πώς μπορώ να εκτελέσω μια δουλειά μόνο με αιτήματα έλξης;Χρησιμοποιήστε τη σκανδάλη pull_request και μια συνθήκη if για πιο λεπτό έλεγχο, όπως η παράλειψη πρόχειρων.

Παρατηρησιμότητα19

Πώς βλέπω το κόστος ανά ροή εργασίας;Ο πίνακας εργαλείων runnerhut αναλύει τις δαπάνες κατά ροή εργασιών, εργασία, ετικέτα και χώρο αποθήκευσης.Πώς μπορώ να δω το κόστος ανά ετικέτα δρομέα;Φιλτράρετε τον πίνακα ελέγχου χρήσης ανά ετικέτα για να δείτε τα λεπτά και τις δαπάνες ανά τύπο δρομέα.Πώς μπορώ να εντοπίσω έναν δρομέα μικρότερου μεγέθους;Σταθερή CPU κοντά στο 100%, πίεση μνήμης ή εναλλαγή δραστηριότητας κατά τη διάρκεια της εργασίας.Πώς μπορώ να βρω το πιο αργό βήμα σε μια ροή εργασίας;Ταξινομήστε τα βήματα κατά διάρκεια στην προβολή εκτέλεσης ή χρησιμοποιήστε τη γραμμή χρόνου runnerhut που εμφανίζει ξεχωριστά την ουρά, τη ρύθμιση και τον χρόνο βημάτων.Πώς μπορώ να βρω ποια ροή εργασίας έγινε πιο αργή;Συγκρίνετε τη διάρκεια του p95 ανά μήνα ροής εργασίας σε μήνα στον πίνακα ελέγχου αναλυτικών στοιχείων.Πώς μπορώ να μετρήσω το ποσοστό επίσκεψης στην κρυφή μνήμη;Ο πίνακας εργαλείων runnerhut αναφέρει ποσοστό επιτυχίας, χρόνο επαναφοράς και μέγεθος ανά κλειδί κρυφής μνήμης.Πώς μπορώ να εξάγω δεδομένα εργασίας;Χρησιμοποιήστε το runnerhut API ή το GitHub Actions REST API και γράψτε τα αποτελέσματα στο CSV.Μπορεί ένας πράκτορας AI να ρωτήσει τις μετρήσεις CI μου;Ναι, μέσω του διακομιστή MCP runnerhut, ο οποίος εκθέτει τις εκδόσεις, τις διάρκειες, τις αποτυχίες και το κόστος ως εργαλεία.Μπορούν οι πράκτορες AI να ενεργοποιήσουν εργασίες CI;Ναι, μέσω του API ή με ώθηση κλάδων, όπως κάθε άλλος παράγοντας.Ποιες μετρήσεις εκθέτει το API;Χρόνος ουράς, εκατοστημόρια διάρκειας, ρυθμός επίσκεψης στην κρυφή μνήμη, χρήση CPU και μνήμης και κόστος ανά εργασία, ετικέτα και ροή εργασίας.Πώς μπορώ να δω τη χρήση της CPU και της μνήμης για μια εργασία;Το runnerhut καταγράφει αυτόματα τη χρήση ανά εργασία και την εμφανίζει στη σελίδα εκτέλεσης.Μπορώ να ειδοποιήσω για εργασίες χωρίς μνήμη;Ναι. Ειδοποίηση για σκοτώσεις OOM ή για χρήση μνήμης που ξεπερνά ένα όριο.Πώς μπορώ να δημιουργήσω μια εβδομαδιαία αναφορά υγείας CI;Προγραμματίστε μια ροή εργασίας που υποβάλλει ερωτήματα για το API μετρήσεων και δημοσιεύει τη διάρκεια του p95, το ποσοστό επισκέψεων στην κρυφή μνήμη, το ρυθμό απολέπισης και τις δαπάνες.Γιατί σκοτώθηκε η δουλειά μου με τον κωδικό εξόδου 137;Αυτό είναι ένα OOM kill — η διαδικασία ξεπέρασε τη διαθέσιμη μνήμη.Γιατί τελείωσε ο δίσκος της δουλειάς μου;Οι δρομείς που φιλοξενούνται στο GitHub έχουν περίπου 14 GB δωρεάν. Τα επίπεδα Docker και τα node_modules εξαντλούνται τόσο γρήγορα.Οι δρομείς έχουν μεγάλους δίσκους;Οι δρομείς που φιλοξενούνται στο GitHub έχουν περίπου 14 GB δωρεάν. Οι runnerhut runner παρέχουν 150 GB έως 2 TB τοπικού NVMe.Περιορίζουν οι ομάδες δρομέων τη συγχρονικότητα;Μπορούν. Μια ομάδα μπορεί να έχει το δικό της ανώτατο όριο συγχρονισμού ανεξάρτητα από το όριο του λογαριασμού σας.Ποια όρια ρυθμού GitHub API επηρεάζουν το CI;Το GITHUB_TOKEN είναι περιορισμένο ανά χώρο αποθήκευσης ανά ώρα. Οι ροές εργασιών που πραγματοποιούν πολλές κλήσεις API μπορούν να το εξαντλήσουν.Γιατί οι εργασίες μου λήγουν χρονικά όρια δικτύου;Συνήθως περιορισμός ρυθμού μητρώου, συμφόρηση πύλης NAT ή πολιτική εξόδου που μειώνει σιωπηλά την κυκλοφορία.