Skip to content

build

build #62

Workflow file for this run

name: "build"
on:
pull_request:
paths-ignore:
- ".docs/**"
push:
branches:
- "*"
schedule:
- cron: "0 8 * * 1" # At 08:00 on Monday
jobs:
qa:
name: "Quality assurance"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: 8.0
coverage: none
- run: composer install --no-progress --prefer-dist
- run: composer phpcs
phpstan:
name: PHPStan
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: 8.0
coverage: none
- run: composer install --no-progress --prefer-dist
- run: composer phpstan -- --no-progress
psalm:
name: Psalm
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: 8.0
coverage: none
- run: composer install --no-progress --prefer-dist
- run: composer psalm -- --no-progress
tests:
runs-on: ubuntu-latest
strategy:
matrix:
php: [ '8.0', '8.1', '8.2', '8.3' ]
fail-fast: false
name: PHP ${{ matrix.php }} tests
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
coverage: none
- run: composer install --no-progress --prefer-dist
- run: make tests
code_coverage:
name: Code Coverage
runs-on: ubuntu-latest
needs: [tests]
steps:
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: 8.0
coverage: none
- run: composer install --no-progress --prefer-dist
- run: make coverage-clover
- run: wget https://github.com/php-coveralls/php-coveralls/releases/download/v2.4.3/php-coveralls.phar
- env:
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: php php-coveralls.phar --verbose --config tests/.coveralls.yml