File: D:/HostingSpaces/SBogers10/cafe-de-bout.komma.pro/vendor/phpunit/phpunit/.github/workflows/ci.yml
# https://help.github.com/en/categories/automating-your-workflow-with-github-actions
on:
- pull_request
- push
name: CI
jobs:
coding-guidelines:
name: Coding Guidelines
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@master
- name: Run friendsofphp/php-cs-fixer
run: php7.3 ./tools/php-cs-fixer fix --diff-format=udiff --dry-run --show-progress=dots --using-cache=no --verbose
type-checker:
name: Type Checker
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@master
- name: Update dependencies with composer
run: php7.3 ./tools/composer update --no-interaction --no-ansi --no-progress --no-suggest
- name: Run vimeo/psalm on public API
run: php7.3 ./tools/psalm --config=.psalm/static-analysis.xml --no-progress --show-info=false
- name: Run vimeo/psalm on internal code
run: php7.3 ./tools/psalm --config=.psalm/config.xml --no-progress --shepherd --show-info=false --stats
backward-compatibility:
name: Backward Compatibility
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@master
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@master
with:
php-version: 7.3
coverage: none
extension-csv: intl
- name: Run roave/backward-compatibility-check
run: php ./tools/roave-backward-compatibility-check --from=42afe2b8b42077b26148272bd03da4ab6e46a072
lint-xml-configuration:
name: Lint XML Configuration
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@master
- name: Build Docker image
uses: ./.docker/lint-xml-configuration
- name: Lint XML configuration files
uses: ./.docker/lint-xml-configuration
with:
args: bash ./build/scripts/lint-xml-configuration
tests:
name: Tests
runs-on: ubuntu-latest
strategy:
matrix:
php-version:
- 7.2
- 7.3
- 7.4
dependencies:
- lowest
- highest
steps:
- name: Checkout
uses: actions/checkout@master
- name: "Install PHP with extensions"
uses: shivammathur/setup-php@master
with:
php-version: ${{ matrix.php-version }}
coverage: xdebug
extension-csv: dom, json, libxml, mbstring, pdo_sqlite, soap, xml, xmlwriter
ini-values-csv: assert.exception=1, zend.assertions=1
- name: "Cache dependencies installed with composer"
uses: actions/cache@v1
with:
path: ~/.composer/cache
key: php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-${{ hashFiles('**/composer.json') }}
restore-keys: |
php${{ matrix.php-version }}-composer-${{ matrix.dependencies }}-
- name: Install lowest dependencies with composer
if: matrix.dependencies == 'lowest'
run: ./tools/composer update --no-ansi --no-interaction --no-progress --no-suggest --prefer-lowest
- name: Install highest dependencies with composer
if: matrix.dependencies == 'highest'
run: ./tools/composer update --no-ansi --no-interaction --no-progress --no-suggest
- name: Run sanity check
run: bash ./build/scripts/sanity-check
- name: Run tests with phpunit
run: ./phpunit --coverage-clover=coverage.xml
- name: Send code coverage report to Codecov.io
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
run: bash <(curl -s https://codecov.io/bash) || true