phpstan.yml 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. name: "PHPStan"
  2. on:
  3. - push
  4. - pull_request
  5. env:
  6. COMPOSER_FLAGS: "--ansi --no-interaction --no-progress --prefer-dist"
  7. jobs:
  8. tests:
  9. name: "PHPStan"
  10. runs-on: ubuntu-latest
  11. strategy:
  12. matrix:
  13. php-version:
  14. - "8.1"
  15. steps:
  16. - name: "Checkout"
  17. uses: "actions/checkout@v2"
  18. - name: "Install PHP"
  19. uses: "shivammathur/setup-php@v2"
  20. with:
  21. coverage: "none"
  22. php-version: "${{ matrix.php-version }}"
  23. extensions: mongodb, redis, amqp
  24. - name: Get composer cache directory
  25. id: composercache
  26. run: echo "::set-output name=dir::$(composer config cache-files-dir)"
  27. - name: Cache dependencies
  28. uses: actions/cache@v2
  29. with:
  30. path: ${{ steps.composercache.outputs.dir }}
  31. key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.json') }}
  32. restore-keys: ${{ runner.os }}-composer-
  33. - name: Add require for mongodb/mongodb to make tests runnable
  34. run: 'composer require ${{ env.COMPOSER_FLAGS }} mongodb/mongodb --dev --no-update'
  35. - name: "Install latest dependencies"
  36. run: "composer update ${{ env.COMPOSER_FLAGS }}"
  37. - name: Run PHPStan
  38. run: composer phpstan