name: Static Analysis on: push: pull_request: jobs: phpstan_src: name: PHPStan Source runs-on: ubuntu-22.04 steps: - name: Checkout code uses: actions/checkout@v3 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: 8.2 tools: composer:v2 coverage: none - name: Install Dependencies uses: nick-invision/retry@v2 with: timeout_minutes: 5 max_attempts: 5 command: composer update --no-interaction --no-progress - name: Install PHPStan uses: nick-invision/retry@v2 with: timeout_minutes: 5 max_attempts: 5 command: composer bin phpstan update --no-interaction --no-progress - name: Execute PHPStan run: vendor/bin/phpstan analyze src -c phpstan.src.neon.dist --no-progress phpstan_tests: name: PHPStan Tests runs-on: ubuntu-22.04 steps: - name: Checkout code uses: actions/checkout@v3 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: 8.2 tools: composer:v2 coverage: none - name: Install Dependencies uses: nick-invision/retry@v2 with: timeout_minutes: 5 max_attempts: 5 command: composer update --no-interaction --no-progress - name: Install PHPStan uses: nick-invision/retry@v2 with: timeout_minutes: 5 max_attempts: 5 command: composer bin phpstan update --no-interaction --no-progress - name: Execute PHPStan run: vendor/bin/phpstan analyze tests -c phpstan.tests.neon.dist --no-progress psalm: name: Psalm runs-on: ubuntu-22.04 steps: - name: Checkout code uses: actions/checkout@v3 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: 8.2 tools: composer:v2 coverage: none - name: Install Dependencies uses: nick-invision/retry@v2 with: timeout_minutes: 5 max_attempts: 5 command: composer update --no-interaction --no-progress - name: Install Psalm uses: nick-invision/retry@v2 with: timeout_minutes: 5 max_attempts: 5 command: composer bin psalm update --no-interaction --no-progress - name: Execute Psalm run: vendor/bin/psalm.phar --no-progress --output-format=github