75 lines
2.1 KiB
YAML
75 lines
2.1 KiB
YAML
name: "CI"
|
|
|
|
on:
|
|
pull_request:
|
|
push:
|
|
branches:
|
|
- 'main'
|
|
|
|
env:
|
|
SYMFONY_PHPUNIT_DIR: "$HOME/symfony-bridge/.phpunit"
|
|
|
|
jobs:
|
|
tests:
|
|
name: "PHP ${{ matrix.php-version }} + ${{ matrix.dependencies }}"
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
php-version:
|
|
- '7.1'
|
|
- '7.2'
|
|
- '7.3'
|
|
- '7.4'
|
|
- '8.0'
|
|
dependencies:
|
|
- 'highest'
|
|
include:
|
|
- php-version: '7.1'
|
|
dependencies: 'lowest'
|
|
|
|
steps:
|
|
- name: "Checkout code"
|
|
uses: actions/checkout@v2.3.3
|
|
|
|
- name: "Install PHP with extensions"
|
|
uses: shivammathur/setup-php@2.7.0
|
|
with:
|
|
coverage: "none"
|
|
php-version: ${{ matrix.php-version }}
|
|
tools: composer:v2
|
|
|
|
- name: "Validate composer.json"
|
|
run: "composer validate --strict --no-check-lock"
|
|
|
|
- name: "Add PHPUnit matcher"
|
|
run: echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
|
|
|
|
- run: composer require --no-update composer/composer:^1.0.2
|
|
|
|
- uses: "ramsey/composer-install@v1"
|
|
with:
|
|
dependency-versions: "${{ matrix.dependencies }}"
|
|
|
|
- name: "Install PHPUnit"
|
|
run: vendor/bin/simple-phpunit install
|
|
|
|
- name: "PHPUnit version"
|
|
run: vendor/bin/simple-phpunit --version
|
|
|
|
- run: vendor/bin/simple-phpunit
|
|
|
|
- run: composer require --no-update composer/composer:^2
|
|
|
|
- uses: "ramsey/composer-install@v1"
|
|
with:
|
|
dependency-versions: "${{ matrix.dependencies }}"
|
|
|
|
- run: vendor/bin/simple-phpunit
|
|
|
|
- if: matrix.php-version == '7.1'
|
|
name: "Lint PHP files"
|
|
run: find src/ -name '*.php' | xargs -n1 php -l
|