Merge pull request #1116 from mfn/mfn-tests #1442
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
pull_request: | |
push: | |
schedule: | |
# Run Monday morning at 3 o'clock | |
# ┌───────────── minute (0 - 59) | |
# │ ┌───────────── hour (0 - 23) | |
# │ │ ┌───────────── day of the month (1 - 31) | |
# │ │ │ ┌───────────── month (1 - 12) | |
# │ │ │ │ ┌───────────── day of the week (0 - 6) | |
# │ │ │ │ │ | |
# │ │ │ │ │ | |
# │ │ │ │ │ | |
- cron: 0 3 * * 1 | |
workflow_dispatch: | |
jobs: | |
tests: | |
strategy: | |
fail-fast: false | |
matrix: | |
php: [8.0, 8.1, 8.2, 8.3] | |
laravel: [^9.0, ^10.0] | |
stability: [prefer-lowest, prefer-stable] | |
exclude: | |
- php: 8.0 | |
laravel: ^10.0 | |
name: P=${{ matrix.php }} L=${{ matrix.laravel }} ${{ matrix.stability }} | |
runs-on: ubuntu-latest | |
env: | |
COMPOSER_NO_INTERACTION: 1 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php }} | |
coverage: none | |
extensions: pdo_sqlite | |
# Due to version incompatibility with older Laravels we test, we remove it | |
- run: composer remove --dev larastan/larastan --no-update | |
- run: composer remove --dev friendsofphp/php-cs-fixer --no-update | |
- run: composer require illuminate/contracts:${{ matrix.laravel }} --no-update | |
- run: composer require illuminate/contracts:9.33 --no-update | |
if: matrix.laravel == '^9.0' && matrix.stability == 'prefer-lowest' | |
- name: Get composer cache directory | |
id: composer-cache | |
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT | |
- name: Cache dependencies | |
uses: actions/cache@v4 | |
with: | |
path: ${{ steps.composer-cache.outputs.dir }} | |
key: ${{ runner.os }}-${{ matrix.php }}-composer-${{ hashFiles('**/composer.json') }} | |
restore-keys: ${{ runner.os }}-${{ matrix.php }}-composer- | |
- run: composer update --prefer-dist --no-progress --${{ matrix.stability }} | |
- name: Run tests | |
run: composer tests |