xref: /webtrees/.github/workflows/phpstan.yaml (revision afa2be9059e78fc240612c1f8656ff15741ec792)
19b152ff9SGreg Roachname: Static analysis
29b152ff9SGreg Roach
39b152ff9SGreg Roachon: [push, pull_request]
49b152ff9SGreg Roach
59b152ff9SGreg Roachjobs:
69b152ff9SGreg Roach  run:
7b408d467SGreg Roach    if: ${{ !startsWith(github.event.head_commit.message, 'Translation:') }}
8d80c4b28SGreg Roach    runs-on: ${{ matrix.operating-system }}
965420c9cSGreg Roach    name: phpstan
10d80c4b28SGreg Roach
11d80c4b28SGreg Roach    strategy:
12d80c4b28SGreg Roach      matrix:
13d80c4b28SGreg Roach        operating-system: [ubuntu-latest]
14598d9504SGreg Roach        php-version: ['8.1', '8.2', '8.3', '8.4']
15*afa2be90SGreg Roach      fail-fast: false
169b152ff9SGreg Roach
179b152ff9SGreg Roach    steps:
18598d9504SGreg Roach      - uses: shivammathur/setup-php@v2
1934ed513fSGreg Roach        with:
2034ed513fSGreg Roach          php-version: ${{ matrix.php-version }}
2134ed513fSGreg Roach
22598d9504SGreg Roach      - uses: actions/checkout@v4
239b152ff9SGreg Roach
24b6017f99SGreg Roach      - run: composer validate
259b152ff9SGreg Roach
26cc96dffcSGreg Roach      - run: composer global config --no-plugins allow-plugins.phpstan/extension-installer true
27cc96dffcSGreg Roach
289b152ff9SGreg Roach      - run: composer global require phpstan/phpstan phpstan/extension-installer phpstan/phpstan-deprecation-rules phpstan/phpstan-strict-rules phpstan/phpstan-phpunit
299b152ff9SGreg Roach
30b6017f99SGreg Roach      - run: composer install --no-progress
319b152ff9SGreg Roach
323028bd71SGreg Roach      - run: ~/.composer/vendor/bin/phpstan analyze --no-progress --level=max app index.php
33