2021-11-28 17:43:02 +01:00
|
|
|
name: Coding Standards & Static Analysis
|
2021-11-29 13:24:11 +01:00
|
|
|
on: [push, pull_request]
|
2021-11-28 17:43:02 +01:00
|
|
|
jobs:
|
|
|
|
qa:
|
|
|
|
name: Quality Assurance
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
env:
|
2021-11-29 13:24:11 +01:00
|
|
|
php-version: '8.1'
|
2022-08-31 01:03:20 +02:00
|
|
|
php-extensions: yaml
|
2021-11-28 17:43:02 +01:00
|
|
|
steps:
|
|
|
|
- name: Checkout
|
2022-03-07 07:16:46 +01:00
|
|
|
uses: actions/checkout@v3
|
2021-11-28 17:43:02 +01:00
|
|
|
|
|
|
|
- name: Setup PHP
|
|
|
|
uses: shivammathur/setup-php@v2
|
|
|
|
with:
|
|
|
|
php-version: ${{ env.php-version }}
|
|
|
|
extensions: ${{ env.php-extensions }}
|
|
|
|
ini-values: zend.assertions=1
|
|
|
|
|
2022-08-31 01:03:20 +02:00
|
|
|
- name: Creating var directory
|
|
|
|
run: mkdir -p var/cache
|
|
|
|
|
2022-05-26 18:16:09 +02:00
|
|
|
- name: Cache QA results
|
2022-08-30 15:30:03 +02:00
|
|
|
uses: actions/cache@v3.0.8
|
2021-11-28 17:43:02 +01:00
|
|
|
with:
|
2022-05-26 18:16:09 +02:00
|
|
|
path: var/cache
|
2022-08-31 01:03:20 +02:00
|
|
|
key: ${{ runner.os }}-qa-${{ hashFiles('composer.lock') }}-${{ hashFiles('.github/workflows/quality-assurance.yml') }}
|
2021-11-28 17:43:02 +01:00
|
|
|
|
2022-01-11 19:06:09 +01:00
|
|
|
- name: Checking Composer
|
2022-04-06 18:28:46 +02:00
|
|
|
run: composer validate --strict
|
2022-01-11 19:06:09 +01:00
|
|
|
|
2022-01-11 16:17:53 +01:00
|
|
|
- uses: "ramsey/composer-install@v2"
|
|
|
|
|
2021-11-28 17:43:02 +01:00
|
|
|
- name: Running PHPStan
|
|
|
|
run: php vendor/bin/phpstan
|
2022-01-11 16:17:53 +01:00
|
|
|
|
|
|
|
- name: Running Psalm
|
|
|
|
run: php vendor/bin/psalm
|
2022-05-21 16:37:16 +02:00
|
|
|
|
|
|
|
- name: Running PHP Coding Standards Fixer
|
|
|
|
run: php vendor/bin/php-cs-fixer fix --dry-run
|
|
|
|
|
|
|
|
- name: Running Rector
|
|
|
|
run: php vendor/bin/rector --dry-run
|