Skip to content

Rename facet form builders to filter form builders because people use the word 'filters' more #299

Rename facet form builders to filter form builders because people use the word 'filters' more

Rename facet form builders to filter form builders because people use the word 'filters' more #299

Workflow file for this run

name: "build"
on:
push:
branches:
- "1.*.x" # Matches our branch versioning that mirrors Sylius', e.g. '1.12.x'
- "master"
- "main"
paths-ignore:
- "**/*.md"
pull_request:
paths-ignore:
- "**/*.md"
workflow_dispatch: ~
env:
APP_ENV: "test"
DATABASE_URL: "mysql://root:[email protected]/sylius?serverVersion=8.0"
PHP_EXTENSIONS: "intl, mbstring"
jobs:
coding-standards:
name: "Coding Standards (PHP${{ matrix.php-version }} | Deps: ${{ matrix.dependencies }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.1" # Always use the lowest version of PHP since a higher version could create actual syntax errors in lower versions
dependencies:
- "highest"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
php-version: "${{ matrix.php-version }}"
extensions: "${{ env.PHP_EXTENSIONS }}"
coverage: "none"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Validate composer"
run: "composer validate --strict"
- name: "Check composer normalized"
run: "composer normalize --dry-run"
- name: "Check style"
run: "composer check-style"
- name: "Rector"
run: "vendor/bin/rector process --dry-run"
continue-on-error: true
- name: "Lint yaml files"
run: "(cd tests/Application && bin/console lint:yaml ../../src/Resources)"
- name: "Lint twig files"
run: "(cd tests/Application && bin/console lint:twig ../../src/Resources)"
dependency-analysis:
name: "Dependency Analysis (PHP${{ matrix.php-version }} | Deps: ${{ matrix.dependencies }} | SF${{ matrix.symfony }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.1"
- "8.2"
dependencies:
- "lowest"
- "highest"
symfony:
- "~5.4.0"
- "~6.4.0"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: "composer-require-checker, composer-unused, flex"
- name: "Remove require-dev section in composer.json"
run: "composer config --unset require-dev"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
env:
SYMFONY_REQUIRE: "${{ matrix.symfony }}"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Run maglnet/composer-require-checker"
run: "composer-require-checker check"
- name: "Run composer-unused/composer-unused"
run: "composer-unused"
static-code-analysis:
name: "Static Code Analysis (PHP${{ matrix.php-version }} | Deps: ${{ matrix.dependencies }} | SF${{ matrix.symfony }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.1"
- "8.2"
dependencies:
- "lowest"
- "highest"
symfony:
- "~5.4.0"
- "~6.4.0"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: "flex"
- name: "Remove sylius/sylius from composer.json"
run: "composer remove --dev --no-update --no-plugins --no-scripts sylius/sylius"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
env:
SYMFONY_REQUIRE: "${{ matrix.symfony }}"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Static analysis"
run: "vendor/bin/psalm --php-version=${{ matrix.php-version }}"
unit-tests:
name: "Unit tests (PHP${{ matrix.php-version }} | Deps: ${{ matrix.dependencies }} | SF${{ matrix.symfony }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.1"
- "8.2"
dependencies:
- "lowest"
- "highest"
symfony:
- "~5.4.0"
- "~6.4.0"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: "flex"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
env:
SYMFONY_REQUIRE: "${{ matrix.symfony }}"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Run phpunit"
run: "vendor/bin/phpunit --testsuite Unit"
integration-tests:
name: "Integration tests (PHP${{ matrix.php-version }} | Deps: ${{ matrix.dependencies }} | SF${{ matrix.symfony }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.1"
- "8.2"
dependencies:
- "lowest"
- "highest"
symfony:
- "~5.4.0"
- "~6.4.0"
services:
meilisearch:
image: "getmeili/meilisearch:v1.10"
env:
MEILI_MASTER_KEY: aSampleMasterKey
ports:
- "7700:7700"
steps:
- name: "Start MySQL"
run: "sudo /etc/init.d/mysql start"
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
coverage: "none"
extensions: "${{ env.PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
tools: "flex"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
env:
SYMFONY_REQUIRE: "${{ matrix.symfony }}"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Lint container"
run: "(cd tests/Application && bin/console lint:container)"
- name: "Create database"
run: "(cd tests/Application && bin/console doctrine:database:create)"
- name: "Create database schema"
run: "(cd tests/Application && bin/console doctrine:schema:create)"
- name: "Validate Doctrine mapping"
run: "(cd tests/Application && bin/console doctrine:schema:validate -vvv)" # The verbose flag will show 'missing' SQL statements, if any
- name: "Load fixtures"
run: "(cd tests/Application && bin/console sylius:fixtures:load -n -vvv)"
- name: "Populate indexes"
run: "(cd tests/Application && bin/console setono:sylius-meilisearch:index --wait)"
- name: "Run phpunit"
run: "vendor/bin/phpunit --testsuite Functional"
mutation-tests:
name: "Mutation tests"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.2"
dependencies:
- "highest"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
coverage: "pcov"
extensions: "${{ env.PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Run infection"
run: "vendor/bin/infection --test-framework-options=\"--testsuite Unit\""
env:
STRYKER_DASHBOARD_API_KEY: "${{ secrets.STRYKER_DASHBOARD_API_KEY }}"
code-coverage:
name: "Code Coverage (PHP${{ matrix.php-version }} | Deps: ${{ matrix.dependencies }})"
runs-on: "ubuntu-latest"
strategy:
matrix:
php-version:
- "8.2"
dependencies:
- "highest"
steps:
- name: "Checkout"
uses: "actions/checkout@v4"
- name: "Setup PHP, with composer and extensions"
uses: "shivammathur/setup-php@v2"
with:
coverage: "pcov"
extensions: "${{ env.PHP_EXTENSIONS }}"
php-version: "${{ matrix.php-version }}"
- name: "Install composer dependencies"
uses: "ramsey/composer-install@v3"
with:
dependency-versions: "${{ matrix.dependencies }}"
- name: "Collect code coverage with pcov and phpunit/phpunit"
run: "vendor/bin/phpunit --coverage-clover=.build/logs/clover.xml --testsuite Unit"
- name: "Send code coverage report to Codecov.io"
uses: "codecov/codecov-action@v4"
with:
token: "${{ secrets.CODECOV_TOKEN }}"