Laravel
Laravel CI op GitHub Actions
Composer install en Pest beginnen beide koud, en MySQL heeft tijd nodig om gezond te worden.
Jaren 80 → 5s
Installeren
7m → 2m
Testsuite
Composer install en Pest beginnen beide koud, en MySQL heeft tijd nodig om gezond te worden.
Waarom het gebeurt
De Composer-cache is niet persistent en de databaseservicecontainer heeft geen gereedheidsafstemming.
Wat te veranderen
- Cache ~/.composer/cache en leverancier/ ingetoetst op composer.lock
- Voer Pest of PHPUnit parallel uit met --parallel
- Gebruik een tmpfs-volume voor MySQL-gegevens, zodat tests niet schijfgebonden zijn
- Cache de Laravel-configuratie en routecaches voor sneller opstarten
Laravel op runnerhut
yaml
jobs: test: runs-on: runnerhut-4vcpu-ubuntu-2404 services: mysql: image: mysql:8 env: { MYSQL_ROOT_PASSWORD: root, MYSQL_DATABASE: testing } steps: - uses: actions/checkout@v4 - run: composer install --prefer-dist --no-progress - run: php artisan test --parallelDe enige runnerhut-specifieke regel is `runs-on: runnerhut-4vcpu-ubuntu-2404`. 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.