mirror of
https://github.com/Respect/Validation.git
synced 2024-05-01 14:12:48 +02:00
114 lines
2.6 KiB
YAML
114 lines
2.6 KiB
YAML
name: Continuous Integration
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- 'bin/**'
|
|
- 'docs/**'
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'bin/**'
|
|
- 'docs/**'
|
|
|
|
jobs:
|
|
tests:
|
|
name: Tests
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
matrix:
|
|
php-version:
|
|
- "7.4"
|
|
- "8.0"
|
|
- "8.1"
|
|
- "8.2"
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Install PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: ${{ matrix.php-version }}
|
|
coverage: none
|
|
extensions: uopz
|
|
tools: pecl
|
|
|
|
- name: Install Localisation Files
|
|
run: |
|
|
sudo locale-gen --no-purge --lang nl_NL.UTF-8
|
|
sudo locale-gen --no-purge --lang pt_BR.UTF-8
|
|
sudo locale-gen --no-purge --lang ru_RU.UTF-8
|
|
|
|
- name: Install Dependencies
|
|
run: composer install --prefer-dist ${{ matrix.composer-extra-arguments }}
|
|
|
|
- name: Run Unit Tests
|
|
run: ./vendor/phpunit/phpunit/phpunit --testsuite=unit
|
|
|
|
- name: Run Integration Tests
|
|
run: ./vendor/phpunit/phpunit/phpunit --testsuite=integration
|
|
|
|
code-coverage:
|
|
name: Code coverage
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Install PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: 8.1
|
|
coverage: pcov
|
|
extensions: uopz
|
|
tools: pecl
|
|
|
|
- name: Install Localisation Files
|
|
run: |
|
|
sudo locale-gen --no-purge --lang nl_NL.UTF-8
|
|
sudo locale-gen --no-purge --lang pt_BR.UTF-8
|
|
sudo locale-gen --no-purge --lang ru_RU.UTF-8
|
|
|
|
- name: Install Dependencies
|
|
run: composer install --prefer-dist ${{ matrix.composer-extra-arguments }}
|
|
|
|
- name: Generating Code Coverage Report
|
|
run: ./vendor/phpunit/phpunit/phpunit --coverage-clover=coverage.xml
|
|
|
|
- name: Send Code Coverage Report to Codecov.io
|
|
uses: codecov/codecov-action@v1
|
|
with:
|
|
token: ${{ secrets.CODECOV_TOKEN }}
|
|
|
|
static-analysis:
|
|
name: Static Analysis
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Install PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: 8.1
|
|
coverage: none
|
|
|
|
- name: Install dependencies
|
|
run: composer install --prefer-dist
|
|
|
|
- name: Run DocHeader
|
|
run: vendor/bin/docheader check library/ tests/
|
|
|
|
- name: Run PHP_CodeSniffer
|
|
run: vendor/bin/phpcs
|
|
|
|
- name: Run PHPStan
|
|
run: vendor/bin/phpstan analyze
|