Skip to content

feat: v2 evaluation engine — resolver chain, conditions, resource policies #9

feat: v2 evaluation engine — resolver chain, conditions, resource policies

feat: v2 evaluation engine — resolver chain, conditions, resource policies #9

Workflow file for this run

name: CI
on:
pull_request:
env:
COMPOSER_PROCESS_TIMEOUT: 0
COMPOSER_NO_INTERACTION: 1
COMPOSER_NO_AUDIT: 1
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: '8.4'
- uses: actions/cache@v4
with:
path: vendor
key: composer-lint-${{ hashFiles('composer.json') }}
restore-keys: composer-lint-
- run: composer install --no-interaction
- run: vendor/bin/pint --test
static:
name: Static Analysis
needs: lint
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: '8.4'
- uses: actions/cache@v4
with:
path: vendor
key: composer-static-${{ hashFiles('composer.json') }}
restore-keys: composer-static-
- run: composer install --no-interaction
- run: vendor/bin/phpstan analyse
test:
name: Tests (SQLite / PHP ${{ matrix.php }} / Laravel ${{ matrix.laravel }})
needs: static
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
php: ['8.4', '8.5']
laravel: ['12', '13']
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
coverage: pcov
extensions: redis
- uses: actions/cache@v4
with:
path: vendor
key: composer-test-${{ matrix.php }}-${{ matrix.laravel }}-${{ hashFiles('composer.json') }}
restore-keys: composer-test-${{ matrix.php }}-${{ matrix.laravel }}-
- run: composer require illuminate/support:^${{ matrix.laravel }}.0 --no-update
- run: composer update --no-interaction
- run: docker compose -f docker-compose.test.yml up -d --wait valkey
- run: vendor/bin/pest --exclude-group=benchmark --coverage --min=90
- run: docker compose -f docker-compose.test.yml down -v
test-database:
name: Tests (${{ matrix.database }} / PHP ${{ matrix.php }} / Laravel ${{ matrix.laravel }})
needs: test
runs-on: ubuntu-latest
strategy:
fail-fast: true
matrix:
php: ['8.4', '8.5']
laravel: ['12', '13']
database: [pgsql, mysql]
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: redis, pdo_pgsql, pdo_mysql
- uses: actions/cache@v4
with:
path: vendor
key: composer-db-${{ matrix.php }}-${{ matrix.laravel }}-${{ hashFiles('composer.json') }}
restore-keys: composer-db-${{ matrix.php }}-${{ matrix.laravel }}-
- run: composer require illuminate/support:^${{ matrix.laravel }}.0 --no-update
- run: composer update --no-interaction
- run: docker compose -f docker-compose.test.yml up -d --wait ${{ matrix.database == 'pgsql' && 'postgres' || matrix.database }} valkey
- run: DB_CONNECTION=${{ matrix.database }} vendor/bin/pest --exclude-group=benchmark
- run: docker compose -f docker-compose.test.yml down -v