Ce que coûtent vraiment les minutes macOS sur GitHub Actions
GitHub facture le temps des runners macOS à un multiple élevé du temps Linux. Cette page détaille les tarifs. Elle montre à partir d’où une machine dédiée à prix fixe dépasse la facturation à la minute. Elle liste aussi les moyens concrets de réduire une facture de CI macOS.
Les tarifs
Sur les runners hébergés par GitHub, la minute Linux coûte environ $0.006. La minute macOS coûte environ $0.062 à $0.102, selon la taille du runner choisi. Cela fait un multiplicateur de 10x à 20x pour la même minute réelle.
Les minutes incluses dans les offres payantes sont elles aussi décomptées avec une pondération. Une minute macOS consomme donc votre quota bien plus vite qu’une minute Linux. La plupart des équipes iOS épuisent le quota inclus tôt dans le mois. Elles paient ensuite à la minute.
D’où vient le multiplicateur
- macOS ne tourne que sur du matériel Apple. Les fournisseurs ne peuvent donc pas entasser les charges macOS sur des serveurs standards, comme ils le font pour Linux.
- La licence d’Apple encadre la location et le partage des Mac, ce qui limite la sursouscription.
- Les runners hébergés repartent de zéro à chaque job. Vous payez donc aussi des minutes pour retélécharger des dépendances et reconstruire des caches que vous aviez déjà.
Le calcul du seuil de rentabilité
Au bas de la fourchette de $0.062 à $0.102 la minute, un runner dédié à prix fixe de $139 par mois est rentabilisé à environ 2,242 minutes par mois. Pour situer, cela représente quelques pull requests par jour sur un vrai projet iOS avec des tests.
3,000 min/mo metered $240 to $480 flat $139 6,000 min/mo metered $480 to $960 flat $139 12,000 min/mo metered $960 to $1,920 flat $139
Entrez vos propres minutes dans le calculateur pour voir le chiffre exact pour votre équipe.
Comment réduire la facture
- Passez sur Linux tout ce qui n’est pas macOS. Le lint, les tests unitaires des paquets partagés et les outils de release ont rarement besoin d’un Mac.
- Mettez en cache sans retenue. Sur les runners hébergés, restaurez les caches SwiftPM, CocoaPods et DerivedData. Vous arrêtez ainsi de payer pour les reconstruire.
- Réduisez le gaspillage de la matrice. Lancez la matrice complète d’appareils sur main, et une seule configuration sur les pull requests.
- Passez au prix fixe après le seuil. Une fois que vous dépassez durablement 2,242 minutes, la facturation à la minute est l’option la plus chère qui soit.
Questions fréquentes
Combien coûte une minute macOS sur GitHub Actions ?
+
Environ $0.062 à $0.102 la minute selon la taille du runner, contre environ $0.006 pour Linux. Les minutes macOS consomment aussi les minutes incluses dans l’offre avec un multiplicateur.
Pourquoi les runners macOS coûtent-ils tellement plus cher que Linux ?
+
macOS ne peut tourner légalement que sur du matériel Apple. Les fournisseurs ne peuvent donc pas regrouper ces charges sur des serveurs standards bon marché. La licence d’Apple limite aussi le partage des machines. Le matériel est dédié, et son coût est amorti sur vos minutes.
À partir de quand un Mac dédié coûte-t-il moins cher que le paiement à la minute ?
+
Au tarif bas, une machine à prix fixe de $139 par mois est rentabilisée vers 2,242 minutes macOS par mois. Au-delà, le prix fixe coûte moins cher, et l’écart grandit à chaque build.
Les minutes incluses dans l’offre GitHub couvrent-elles les builds macOS ?
+
En partie. Les minutes incluses sont décomptées avec une pondération pour macOS. Le quota disparaît donc bien plus vite que le chiffre brut ne le laisse croire. Les équipes qui compilent chaque jour passent en général aux minutes payantes dès la première ou la deuxième semaine du mois.