name: Code style and static analysis

on:
    pull_request:
    push:
        branches: [ master, 2.x, 1.x ]

jobs:
    php-cs-fixer:
        name: PHP-CS-Fixer
        runs-on: ubuntu-latest
        steps:
            - name: Checkout
              uses: actions/checkout@v2

            - name: Setup PHP
              uses: shivammathur/setup-php@v2
              with:
                  php-version: '8.0'

            - name: Install dependencies
              run: composer install --no-progress --no-interaction --prefer-dist

            - name: Install dependencies
              run: composer bin php-cs-fixer update

            - name: Run script
              run: vendor-bin/php-cs-fixer/bin/php-cs-fixer fix --verbose --diff --dry-run

    phpstan:
        name: PHPStan
        runs-on: ubuntu-latest
        steps:
            - name: Checkout
              uses: actions/checkout@v2

            - name: Setup PHP
              uses: shivammathur/setup-php@v2

            - name: Install dependencies
              run: composer install --no-progress --no-interaction --prefer-dist

            - name: Install dependencies
              run: composer bin phpstan update

            - name: Run script
              run: vendor-bin/phpstan/bin/phpstan analyse phpstan.neon
