pnpm
pnpm CI στις GitHub Actions
Η εγκατάσταση pnpm είναι γρήγορη τοπικά αλλά αργή σε CI.
65s → 6s
Εγκατάσταση
3m → 12s
Εγκατάσταση Monorepo
Γιατί συμβαίνει
Τι να αλλάξει
- Αποθηκεύστε προσωρινά τη διαδρομή αποθήκευσης pnpm που επιστρέφεται από τη διαδρομή αποθήκευσης pnpm
- Εγκαταστήστε με --frozen-lockfile για αναπαραγωγιμότητα
- Χρησιμοποιήστε την προσωρινή μνήμη αποθήκευσης αντί για την προσωρινή αποθήκευση node_modules — καταργεί τις διπλές αντιγραφές σε χώρους εργασίας
pnpm στο runnerhut
Το επόμενο build σας μπορεί να είναι διπλάσια γρήγορο, στη μισή τιμή
Ξεκινήστε δωρεάν. Η αποχώρηση είναι η ίδια μία γραμμή — δημοσιεύουμε κι αυτό το diff.
Σχετικά
BazelΟλόκληρη η τιμή του Bazel είναι η προσωρινή αποθήκευση και το CI πετάει την κρυφή μνήμη σε κάθε εκτέλεση.GradleΗ φάση διαμόρφωσης εκτελείται για 40 δευτερόλεπτα πριν γίνει μεταγλώττιση.MavenΟ Maven κατεβάζει το Διαδίκτυο σε κάθε τρέξιμο.NxΤο Nx ανακατασκευάζει κάθε έργο επειδή δεν μπορεί να πει τι άλλαξε.