Rust
GitHub Actions CI σε Rust
Το Cargo δημιουργεί ξανά ολόκληρο το γράφημα εξάρτησης σχεδόν σε κάθε εκτέλεση CI.
12μ → 4μ
Ψυχρή κατασκευή
12m → 45s
Ζεστή κατασκευή
94%
Ποσοστό επισκέψεων στην κρυφή μνήμη
Γιατί συμβαίνει
Τι να αλλάξει
- Cache ~/.cargo/registry, ~/.cargo/git και target/ keyed στο Cargo.lock και όχι στα αρχεία προέλευσης
- Χρησιμοποιήστε scache έτσι ώστε ακόμη και ένας ψυχρός στόχος/χρησιμοποιήσει ξανά μεταγλωττισμένα τεχνουργήματα σε διάφορα κλαδιά
- Διαχωρίστε τον έλεγχο φορτίου, το κλιπ φορτίου και τη δοκιμή φορτίου σε παράλληλες εργασίες με κοινή χρήση μιας κρυφής μνήμης
- Δημιουργήστε τεχνουργήματα απελευθέρωσης σε έναν δρομέα 16 vCPU — κλίμακες rustc κοντά σε γραμμικά με μονάδες κωδικογόνου
Rust στο runnerhut
Το επόμενο build σας μπορεί να είναι διπλάσια γρήγορο, στη μισή τιμή
Ξεκινήστε δωρεάν. Η αποχώρηση είναι η ίδια μία γραμμή — δημοσιεύουμε κι αυτό το diff.
Σχετικά
ΠήγαινεΟι εκδόσεις Go είναι γρήγορες τοπικά και ανεξήγητα αργές στο CI.PythonΗ εγκατάσταση του pip διαρκεί λίγα λεπτά και το pytest εκτελείται σε έναν μόνο πυρήνα.Node.jsΤο npm ci γράφει δεκάδες χιλιάδες μικρά αρχεία σε κάθε εκτέλεση.JavaΚάθε έκδοση κατεβάζει εκ νέου τις ίδιες εξαρτήσεις Maven ή Gradle.