Skip to content

Pin Testbench per Laravel major in CI #2196

Pin Testbench per Laravel major in CI

Pin Testbench per Laravel major in CI #2196

Workflow file for this run

name: tests
on:
push:
pull_request:
schedule:
- cron: '0 0 * * *'
jobs:
resolve:
name: Resolve P${{ matrix.php }} - L${{ matrix.laravel }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php: [ 8.4, 8.3, 8.2 ]
include:
- php: 8.4
laravel: 13.*
testbench: ^11.0
- php: 8.3
laravel: 13.*
testbench: ^11.0
- php: 8.4
laravel: 12.*
testbench: ^10.0
- php: 8.3
laravel: 12.*
testbench: ^10.0
- php: 8.2
laravel: 12.*
testbench: ^10.0
- php: 8.4
laravel: 11.*
testbench: ^9.6
- php: 8.3
laravel: 11.*
testbench: ^9.6
- php: 8.2
laravel: 11.*
testbench: ^9.6
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: curl, dom, intl, json, libxml, mbstring, openssl, zip
tools: composer:v2
- name: Check dependency resolution
run: |
composer require illuminate/support:${{ matrix.laravel }} orchestra/testbench:${{ matrix.testbench }} --no-update --no-interaction
composer update --prefer-stable --prefer-dist --no-interaction --no-progress --dry-run
tests:
name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }}
runs-on: ubuntu-latest
needs: resolve
strategy:
fail-fast: true
matrix:
php: [ 8.4, 8.3, 8.2 ]
include:
- php: 8.4
laravel: 13.*
testbench: ^11.0
dependency-version: prefer-stable
- php: 8.3
laravel: 13.*
testbench: ^11.0
dependency-version: prefer-stable
- php: 8.4
laravel: 12.*
testbench: ^10.0
dependency-version: prefer-stable
- php: 8.3
laravel: 12.*
testbench: ^10.0
dependency-version: prefer-stable
- php: 8.2
laravel: 12.*
testbench: ^10.0
dependency-version: prefer-stable
- php: 8.4
laravel: 11.*
testbench: ^9.6
dependency-version: prefer-stable
- php: 8.3
laravel: 11.*
testbench: ^9.6
dependency-version: prefer-stable
- php: 8.2
laravel: 11.*
testbench: ^9.6
dependency-version: prefer-stable
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: curl, dom, intl, json, libxml, mbstring, openssl, zip
tools: composer:v2
coverage: xdebug
- name: Install dependencies
run: |
composer require illuminate/support:${{ matrix.laravel }} orchestra/testbench:${{ matrix.testbench }} --no-update --no-interaction
composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-progress
- name: Execute tests
run: vendor/bin/phpunit --coverage-text
prefer-lowest:
name: Prefer lowest (P8.2)
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
extensions: curl, dom, intl, json, libxml, mbstring, openssl, zip
tools: composer:v2
coverage: xdebug
- name: Install lowest dependencies
run: |
composer update --prefer-lowest --prefer-stable --prefer-dist --no-interaction --no-progress
- name: Execute tests
run: vendor/bin/phpunit --coverage-text