| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- name: "PHPStan"
- on:
- - push
- - pull_request
- env:
- COMPOSER_FLAGS: "--ansi --no-interaction --no-progress --prefer-dist"
- permissions:
- contents: read # to fetch code (actions/checkout)
- jobs:
- tests:
- name: "PHPStan"
- runs-on: ubuntu-latest
- strategy:
- matrix:
- php-version:
- - "8.0"
- steps:
- - name: "Checkout"
- uses: "actions/checkout@v4"
- - name: "Install PHP"
- uses: "shivammathur/setup-php@v2"
- with:
- coverage: "none"
- php-version: "${{ matrix.php-version }}"
- extensions: mongodb, redis, amqp
- - name: Get composer cache directory
- id: composercache
- run: echo "dir=$(composer config cache-files-dir)" >> "$GITHUB_OUTPUT"
- - name: Cache dependencies
- uses: actions/cache@v4
- with:
- path: ${{ steps.composercache.outputs.dir }}
- key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
- restore-keys: ${{ runner.os }}-composer-
- - name: Add require for mongodb/mongodb to make tests runnable
- run: "composer require ${{ env.COMPOSER_FLAGS }} mongodb/mongodb --dev --no-update"
- - name: "Install latest dependencies"
- # --ignore-platform-req=php here needed as long as elasticsearch/elasticsearch does not support php 8
- run: "composer update ${{ env.COMPOSER_FLAGS }} --ignore-platform-req=php"
- - name: Run PHPStan
- run: composer phpstan
|