.github/workflows/tests.yml
name: Tests
on:
push:
branches:
- '2.*'
pull_request:
types:
- synchronize
- opened
- edited
- reopened
jobs:
compile-assets:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
# Configure NPM
- uses: actions/setup-node@v2
with:
node-version: '16.x'
# Install NPM dependencies
- name: Install Dependencies
run: npm install
# Build static assets
- name: Compile Assets
run: npm run build
run-tests:
needs: compile-assets
runs-on: ubuntu-latest
strategy:
matrix:
laravel: [9.*]
php: [8.0, 8.1]
name: 'PHP ${{ matrix.php }} / Laravel ${{ matrix.laravel }}'
steps:
- uses: actions/checkout@master
# Configure PHP
- name: Select PHP version
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: mbstring, pdo_sqlite, fileinfo, gd
tools: composer:v2
# Delete composer.lock
- name: Delete composer.lock
run: rm composer.lock
# Install PHP dependencies
- name: Install Composer dependencies
run: composer require "illuminate/support:${{ matrix.laravel }}" "illuminate/contracts:${{ matrix.laravel }}"
# Display installed laravel version
- name: Show laravel version
run: composer show laravel/framework
# Display installed PHP version
- name: Show PHP version
run: composer show php -p
# Run tests
- name: Run tests
run: composer run test