Merge pull request #394 from garak/fix-twig-cs #102
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Continuous Integration | |
on: | |
pull_request: ~ | |
push: ~ | |
jobs: | |
check: | |
runs-on: ubuntu-22.04 | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
- name: Validate composer.json | |
run: composer validate --strict --no-check-lock | |
cs-fixer: | |
runs-on: ubuntu-22.04 | |
name: PHP-CS-Fixer | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Fix CS | |
uses: docker://oskarstark/php-cs-fixer-ga | |
twig-cs-fixer: | |
runs-on: ubuntu-22.04 | |
name: Twig-CS-Fixer | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Require the vendor | |
run: composer require --dev --no-update vincentlanglet/twig-cs-fixer ^2.12 | |
- name: Update | |
run: composer update --no-interaction --no-progress | |
- name: Run | |
run: vendor/bin/twig-cs-fixer lint src/Knp/Menu/Resources/views | |
tests: | |
runs-on: ubuntu-22.04 | |
strategy: | |
fail-fast: false | |
matrix: | |
include: | |
- description: 'No Symfony specified' | |
php: '8.1' | |
- description: 'No Symfony specified' | |
php: '8.2' | |
- description: 'No Symfony specified' | |
php: '8.3' | |
- description: 'Lowest deps' | |
php: '8.1' | |
composer_option: '--prefer-lowest' | |
env: | |
SYMFONY_DEPRECATIONS_HELPER: max[self]=0 | |
- description: 'Symfony 5.4' | |
php: '8.1' | |
symfony: 5.4.* | |
- description: 'Dev deps' | |
php: '8.2' | |
dev: true | |
symfony: 7.0.* | |
name: PHP ${{ matrix.php }} tests (${{ matrix.description }}) | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Cache | |
uses: actions/cache@v4 | |
with: | |
path: ~/.composer/cache/files | |
key: composer-${{ matrix.php }}-${{ matrix.symfony }}-${{ matrix.composer_option }} | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: ${{ matrix.php }} | |
- run: | | |
sed -ri 's/"symfony\/(.+)": "(.+)"/"symfony\/\1": "'${{ matrix.symfony }}'"/' composer.json; | |
if: matrix.symfony | |
- run: composer config minimum-stability dev && composer config prefer-stable true | |
if: matrix.dev | |
- run: composer update --no-interaction --no-progress --ansi ${{ matrix.composer_option }} | |
- run: vendor/bin/phpunit | |
phpstan: | |
runs-on: ubuntu-22.04 | |
name: PHPStan | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup PHP | |
uses: shivammathur/setup-php@v2 | |
with: | |
php-version: '8.1' | |
- run: composer update --no-interaction --no-progress --ansi | |
- run: vendor/bin/phpstan analyze |