mirror of
https://github.com/symfony/ai.git
synced 2026-03-23 23:42:18 +01:00
71 lines
2.5 KiB
YAML
71 lines
2.5 KiB
YAML
name: Unit Tests
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- 'src/*/doc/**'
|
|
- 'src/**/*.md'
|
|
pull_request:
|
|
paths-ignore:
|
|
- 'src/*/doc/**'
|
|
- 'src/**/*.md'
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
php:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
php-version: ['8.1', '8.2', '8.3', '8.4']
|
|
dependency-version: ['']
|
|
symfony-version: ['']
|
|
minimum-stability: ['stable']
|
|
include:
|
|
# dev packages (probably not needed to have multiple such jobs)
|
|
- minimum-stability: 'dev'
|
|
php-version: '8.4'
|
|
# lowest deps
|
|
- php-version: '8.1'
|
|
dependency-version: 'lowest'
|
|
# LTS version of Symfony
|
|
- php-version: '8.1'
|
|
symfony-version: '6.4.*'
|
|
|
|
env:
|
|
SYMFONY_REQUIRE: ${{ matrix.symfony-version || '>=5.4' }}
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- name: Configure environment
|
|
run: |
|
|
echo COLUMNS=120 >> $GITHUB_ENV
|
|
echo COMPOSER_MIN_STAB='composer config minimum-stability ${{ matrix.minimum-stability || 'stable' }} --ansi' >> $GITHUB_ENV
|
|
echo COMPOSER_UP='composer update ${{ matrix.dependency-version == 'lowest' && '--prefer-lowest' || '' }} --no-progress --no-interaction --ansi' >> $GITHUB_ENV
|
|
echo PHPUNIT='vendor/bin/phpunit' >> $GITHUB_ENV
|
|
[ 'lowest' = '${{ matrix.dependency-version }}' ] && export SYMFONY_DEPRECATIONS_HELPER=weak
|
|
|
|
echo "Packages: $PACKAGES"
|
|
echo "PACKAGES=$PACKAGES" >> $GITHUB_ENV
|
|
|
|
- name: Setup PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: ${{ matrix.php-version }}
|
|
tools: flex
|
|
|
|
- name: Install root dependencies
|
|
run: composer install
|
|
|
|
- name: Build root packages
|
|
run: php .github/build-packages.php
|
|
|
|
- name: Run packages tests
|
|
run: |
|
|
source .github/workflows/.utils.sh
|
|
|
|
echo "$PACKAGES" | xargs -n1 | parallel -j +3 "_run_task {} '(cd src/{} && $COMPOSER_MIN_STAB && $COMPOSER_UP && $PHPUNIT)'"
|