Skip to content

Fix Symfony requirements to Annotation Reader and test container build #49

Fix Symfony requirements to Annotation Reader and test container build

Fix Symfony requirements to Annotation Reader and test container build #49

name: Test application
on:
pull_request:
push:
branches:
- main
- '[0-9]+.[0-9]+'
- '[0-9]+.x'
jobs:
php:
name: "Run tests with php ${{ matrix.php-version }}"
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
# lowest dependencies
- php-version: '7.2'
composer-flags: '--prefer-lowest --prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_PHPUNIT_VERSION: 8.5
# Symfony 4.4
- php-version: '7.4'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "4.4.*"
# Symfony 5.0
- php-version: '7.4'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "5.0.*"
# highest dependencies php 7.3
- php-version: '7.3'
composer-flags: '--prefer-stable --prefer-dist'
lint: false
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "^6.0"
# highest dependencies php 7.4
- php-version: '7.4'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "^6.0"
# highest dependencies php 8.0
- php-version: '8.0'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "^6.0"
# highest dependencies php 8.1
- php-version: '8.1'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "^6.0"
# highest dependencies php 8.2
- php-version: '8.2'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "^7.0"
# highest dependencies php 8.3
- php-version: '8.3'
composer-flags: '--prefer-stable --prefer-dist'
env:
SYMFONY_DEPRECATIONS_HELPER: weak
SYMFONY_REQUIRE: "^7.0"
steps:
- name: Checkout project
uses: actions/checkout@v2
- name: Install and configure PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
tools: 'composer'
- name: Get composer cache directory
id: composer-cache-dir
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- name: Cache dependencies
uses: actions/cache@v2
id: composer-cache
with:
path: ${{ steps.composer-cache-dir.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Remove tooling
run: |
composer remove php-cs-fixer/shim --dev --no-update
env: ${{ matrix.env }}
- name: Add sensio/framework-extra-bundle dependency
if: ${{ matrix.env.SYMFONY_REQUIRE != '^7.0' }}
run: |
composer require sensio/framework-extra-bundle:"^5.2.3 || ^6.0" --dev --no-update
env: ${{ matrix.env }}
- name: Install dependencies
run: |
composer update ${{ matrix.composer-flags }}
./phpunit install
env: ${{ matrix.env }}
- name: Run tests
run: ./phpunit
env: ${{ matrix.env }}
lint:
name: "Lint"
runs-on: ubuntu-latest
steps:
- name: Checkout project
uses: actions/checkout@v2
- name: Install and configure PHP
uses: shivammathur/setup-php@v2
with:
php-version: 7.4
tools: 'composer'
- name: Get composer cache directory
id: composer-cache-dir
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- name: Cache dependencies
uses: actions/cache@v2
id: composer-cache
with:
path: ${{ steps.composer-cache-dir.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('composer.lock') }}
restore-keys: |
${{ runner.os }}-composer-
- name: Install dependencies
run: |
composer update --prefer-stable --prefer-dist
env:
SYMFONY_REQUIRE: "^6.0"
- name: Lint
run: composer lint