Skip to content

Code_Checks

Code_Checks #293

Workflow file for this run

name: Code_Checks
# Controls when the workflow will run
on:
schedule:
# minute, hour, day of month, month, weekday
# run every night at 5:15
- cron: '15 5 * * *'
# Triggers the workflow on push or pull request events but only for the main branch
push:
branches: [ master ]
pull_request:
branches: [ master ]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
permissions:
contents: read
jobs:
tests:
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
php: ['8.2']
stability: [ prefer-stable ]
mongodb-version: ['7.0']
symfony-version: ['7.0.*']
include:
- php: '8.1'
mongodb-version: '7.0'
symfony-version: 5.4.*
stability: prefer-lowest
- php: '8.1'
mongodb-version: '7.0'
symfony-version: 5.4.*
stability: prefer-stable
- php: '8.1'
mongodb-version: '7.0'
symfony-version: 6.4.*
stability: prefer-stable
- php: '8.2'
mongodb-version: '7.0'
symfony-version: 7.0.*
stability: prefer-stable
- php: '8.3'
mongodb-version: '7.0'
symfony-version: 7.0.*
stability: prefer-stable
- php: '8.4'
mongodb-version: '7.0'
symfony-version: 7.0.*
stability: prefer-stable
- php: '8.5'
mongodb-version: '7.0'
symfony-version: 7.3.*
stability: prefer-stable
name: PHP ${{ matrix.php }} - ${{ matrix.symfony-version }} - ${{ matrix.stability }}
steps:
# basically git clone
- uses: actions/checkout@v4
- name: Cache dependencies
uses: actions/cache@v4
with:
path: ~/.composer/cache/files
key: dependencies-php-${{ matrix.php }}-composer-${{ hashFiles('composer.json') }}
# use PHP of specific version
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
# we need an older mongodb for symfony 5.4 and php 8.1 tests
extensions: pcov, curl, mongodb-${{ matrix.symfony-version == '5.4.*' && '1.19.4' || 'stable' }}
coverage: pcov
- name: Start MongoDB
uses: supercharge/[email protected]
with:
mongodb-version: ${{ matrix.mongodb-version }}
- name: Install dependencies
env:
SYMFONY_REQUIRE: ${{ matrix.symfony-version }}
run: |
composer global config --no-plugins allow-plugins.symfony/flex true
composer global require --no-progress --no-scripts --no-plugins symfony/flex
composer update --no-interaction --prefer-dist
vendor/bin/simple-phpunit install
- name: Execute tests
env:
SYMFONY_DEPRECATIONS_HELPER: 'weak'
run: vendor/bin/phpunit --coverage-text
cs-and-rector:
runs-on: ubuntu-latest
permissions:
# Give the default GITHUB_TOKEN write permission to commit and push the changed files back to the repository.
contents: write
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: 8.3
coverage: none
- name: Cache dependencies
id: composer-cache
uses: actions/cache@v4
with:
path: vendor
key: dependencies-php-8.3-composer-${{ hashFiles('composer.json') }}
- run: |
composer install --prefer-dist --no-progress
composer cs-fix
composer rector-fix
- uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: Apply CS/Rector changes
phpstan:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: 8.3
coverage: none
- run: composer install --no-progress
- run: vendor/bin/phpstan analyse --memory-limit=-1