Snel
Swift CI op GitHub Actions
Snelle typecontrole domineert de bouwtijd en tussen de runs door wordt niets hergebruikt.
14m → 4m
Bouw
14m → jaren 70
Incrementeel
Snelle typecontrole domineert de bouwtijd en tussen de runs door wordt niets hergebruikt.
Waarom het gebeurt
De .build-directory van SwiftPM en DerivedData van Xcode worden verwijderd, dus bij elke run wordt de hele modulegrafiek gecontroleerd.
Wat te veranderen
- Persist .build voor SwiftPM- en DerivedData voor Xcode-projecten
- Vind langzame expressies met -Xfrontend -warn-long-expression-type-checking=200
- Modules splitsen, zodat een wijziging in één module niet alles ongeldig maakt
- Gebruik een M4 macOS-runner: Swift-compilatie is sterk single-thread-gevoelig
Swift op runnerhut
yaml
jobs: test: runs-on: runnerhut-macos-15-m4 steps: - uses: actions/checkout@v4 - run: swift build --configuration release - run: swift test --parallelDe enige runnerhut-specifieke regel is `runs-on: runnerhut-macos-15-m4`. Al het andere is standaard GitHub Actions — dezelfde acties, dezelfde geheimen en hetzelfde machtigingsmodel dat u vandaag de dag gebruikt.
Je volgende build kan twee keer zo snel zijn, voor de halve prijs
Begin gratis. Weggaan is dezelfde ene regel, en die diff publiceren we ook.