Skip to content

[v5] Refactoring

[v5] Refactoring #953

# from doctrine/instantiator:
# https://github.com/doctrine/instantiator/blob/97aa11bb71ad6259a8c5a1161b4de2d6cdcc5501/.github/workflows/continuous-integration.yml
name: "CI"
on:
pull_request:
branches:
- "*.x"
- master
push:
branches:
- "*.x"
- master
env:
fail-fast: true
jobs:
phpunit:
name: "PHPUnit"
runs-on: "ubuntu-latest"
strategy:
fail-fast: false
matrix:
php:
- "8.1"
- "8.2"
- "8.3"
symfony-require:
- "^6.4"
- "^7.0"
dependencies:
- "lowest"
- "highest"
doctrine-annotations:
- true
- false
exclude:
- symfony-require: "^7.0"
doctrine-annotations: true
- php: "8.1"
symfony-require: "^7.0"
steps:
- name: "Checkout"
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: "Install PHP without coverage"
uses: shivammathur/setup-php@v2
with:
php-version: "${{ matrix.php-version }}"
tools: composer, flex
coverage: pcov
- name: "Get composer cache directory"
id: composercache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: "Cache dependencies"
uses: actions/cache@v3
with:
path: ${{ steps.composercache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
restore-keys: ${{ runner.os }}-composer-
- name: Install doctrine/annotations
if: matrix.doctrine-annotations == true
run: |
composer require doctrine/annotations --no-update
- name: Remove packages not compatible symfony 7
if: matrix.symfony-require == '^7.0'
run: |
composer remove friendsofsymfony/rest-bundle sensio/framework-extra-bundle --no-update --dev
- name: "Install dependencies with composer"
uses: "ramsey/composer-install@v2"
env:
SYMFONY_REQUIRE: "${{ matrix.symfony-require }}"
- name: "PHPUnit Tests"
run: vendor/bin/phpunit --configuration phpunit.xml.dist --coverage-text