Skip to content

Reorganize

Reorganize #1144

Workflow file for this run

# https://help.github.com/en/categories/automating-your-workflow-with-github-actions
on:
- pull_request
- push
name: CI
env:
COMPOSER_ROOT_VERSION: "10.1-dev"
jobs:
coding-guidelines:
name: Coding Guidelines
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
extensions: none, iconv, json, phar, tokenizer
coverage: none
tools: none
- name: Run PHP-CS-Fixer
run: ./tools/php-cs-fixer fix --dry-run --show-progress=dots --using-cache=no --verbose
type-checker:
name: Type Checker
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Install PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
extensions: none, dom, iconv, mbstring, opcache, simplexml, tokenizer, xml, xmlwriter
coverage: none
tools: none
- name: Update dependencies with composer
run: ./tools/composer update --no-interaction --no-ansi --no-progress
- name: Run vimeo/psalm
run: ./tools/psalm --config=.psalm/config.xml --no-progress --shepherd --show-info=false --stats
tests:
name: Tests
runs-on: ${{ matrix.os }}
env:
PHP_EXTENSIONS: none, dom, json, libxml, mbstring, openssl, pdo_sqlite, soap, tokenizer, xml, xmlwriter
PHP_INI_VALUES: memory_limit=-1, assert.exception=1, zend.assertions=1, error_reporting=-1, log_errors_max_len=0, display_errors=On
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- windows-latest
php-version:
- "8.1"
- "8.2"
- "8.3"
- "8.4"
coverage-driver:
- "pcov"
- "xdebug3"
steps:
- name: Configure Git to avoid issues with line endings
if: matrix.os == 'windows-latest'
run: git config --global core.autocrlf false
- name: Checkout
uses: actions/checkout@v3
- name: Install PHP with extensions
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
coverage: ${{ matrix.coverage-driver }}
extensions: ${{ env.PHP_EXTENSIONS }}
ini-values: ${{ env.PHP_INI_VALUES }}
tools: none
- name: Install dependencies with Composer
run: php ./tools/composer update --no-ansi --no-interaction --no-progress
- name: Run tests with PHPUnit
run: vendor/bin/phpunit --coverage-clover=coverage.xml
- name: Send code coverage report to Codecov.io
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}