Skip to content

invoice static analysis #619

invoice static analysis

invoice static analysis #619

defaults:
run:
working-directory: invoice
on:
pull_request:
paths-ignore:
- 'invoice/docs/**'
- 'invoice/README.md'
- 'invoice/CHANGELOG.md'
- 'invoice/.gitignore'
- 'invoice/.env.example'
- 'invoice/.gitattributes'
- 'invoice/infection.json.dist'
- 'invoice/phpunit.xml.dist'
push:
paths-ignore:
- 'invoice/docs/**'
- 'invoice/README.md'
- 'invoice/CHANGELOG.md'
- 'invoice/.gitignore'
- 'invoice/.env.example'
- 'invoice/.gitattributes'
- 'invoice/infection.json.dist'
- 'invoice/phpunit.xml.dist'
schedule:
- cron: '0 0 * * *'
name: invoice static analysis
jobs:
mutation:
name: PHP ${{ matrix.php }}-${{ matrix.os }}
env:
working_directory: invoice
runs-on: ${{ matrix.os }}
strategy:
matrix:
os:
- ubuntu-latest
php:
- 8.1
steps:
- name: Checkout
uses: actions/checkout@v2
with:
working-directory: ${{ env.working_directory }}
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
tools: composer:v2, cs2pr
coverage: none
working-directory: ${{ env.working_directory }}
- name: Determine composer cache directory
run: echo "COMPOSER_CACHE_DIR=$(composer config cache-dir)" >> $GITHUB_ENV
working-directory: ${{ env.working_directory }}
- name: Cache dependencies installed with composer
uses: actions/cache@v3
with:
path: ${{ env.COMPOSER_CACHE_DIR }}
key: php${{ matrix.php }}-composer-${{ hashFiles('**/composer.json') }}
restore-keys: |
php${{ matrix.php }}-composer-
working-directory: ${{ env.working_directory }}
- name: Update composer
run: composer self-update
working-directory: ${{ env.working_directory }}
- name: Install dependencies with composer
run: composer update --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi
working-directory: ${{ env.working_directory }}
- name: Static analysis
run: vendor/bin/psalm --shepherd --stats --output-format=checkstyle | cs2pr --graceful-warnings --colorize
working-directory: ${{ env.working_directory }}