Skip to content

CI

CI #165

Workflow file for this run

name: CI
on:
push:
branches: [ main ]
pull_request:
schedule:
- cron: '0 0 * * MON'
jobs:
check-cs:
name: Check Coding Standards
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: PHP-CS-Fixer
uses: docker://oskarstark/php-cs-fixer-ga
with:
args: --config=.php-cs-fixer.php --diff --dry-run
phpstan:
name: Run PHPStan analysis
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Install Composer dependencies
run: composer update --prefer-dist --no-interaction
- name: Run Tests
run: php vendor/bin/phpstan analyse
ci:
name: Test PHP ${{ matrix.php-version }} ${{ matrix.name }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php-version: ['7.4', '8.0', '8.1', '8.2']
minimum-stability: ['']
composer-flags: ['']
name: ['']
include:
- php-version: 7.4
composer-flags: '--prefer-lowest'
name: '(prefer lowest dependencies)'
- php-version: 8.1
minimum-stability: 'dev'
name: '(minimum dev stability)'
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup PHP, with composer and extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
extensions: mbstring, xml
ini-values: phar.readonly="Off"
- name: Get composer cache directory
id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- name: Cache composer dependencies
uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ github.sha }}
restore-keys: ${{ runner.os }}-composer-
- name: Allow dev dependencies
run: if [ "${{ matrix.minimum-stability }}" = "dev" ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi;
- name: Install Composer dependencies
run: composer update --prefer-dist --no-interaction ${{ matrix.composer-flags }}
- name: Run Tests
run: php vendor/bin/simple-phpunit