Skip to content

Update compatibility for PHP 8.1 #44

Update compatibility for PHP 8.1

Update compatibility for PHP 8.1 #44

Workflow file for this run

name: Tests
on:
push:
branches: [ main, release ]
pull_request:
branches: [ main, release ]
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
php-version: ['7.2', '7.3', '7.4', '8.0', '8.1']
symfony-pkg-version: ['^4.0', '^5.0', '^6.0']
composer-flag:
- '--prefer-dist'
- '--prefer-stable --prefer-lowest'
exclude:
- php-version: '7.2'
symfony-pkg-version: '^6.0'
- php-version: '7.3'
symfony-pkg-version: '^6.0'
- php-version: '7.4'
symfony-pkg-version: '^6.0'
services:
mysql:
image: mysql:5.7
env:
MYSQL_ALLOW_EMPTY_PASSWORD: yes
MYSQL_DATABASE: slurp_testing
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
name: Test PHP ${{ matrix.php-version }} / Symfony ${{ matrix.symfony-pkg-version }} / composer ${{ matrix.composer-flag }}
steps:
- uses: actions/checkout@v2
- name: Setup PHP version ${{ matrix.php-version }}
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
- name: Confirm PHP Version
run: php -v
- name: Validate composer.json and composer.lock
run: composer validate --strict
- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v2
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: Install Composer dependencies
run: composer update ${{ matrix.composer-flag }} -W --with symfony/validator:"${{ matrix.symfony-pkg-version }}" --with symfony/event-dispatcher:"${{ matrix.symfony-pkg-version }}" --no-interaction --no-progress
# This may be necessary for older dev packages that do not have
# upper PHP compatibility version constraints.
- name: Update Composer Dev dependencies
run: composer update mockery/mockery --prefer-dist --no-interaction --no-progress
- name: Run Code Style Check for PHP ${{ matrix.php-version }}
run: composer run-script style-check
if: matrix.php-version == '8.0'
- name: Run tests for PHP ${{ matrix.php-version }}
run: composer run-script test
env:
TESTS_SLURP_DBADAPTER_MYSQL_HOST: 127.0.0.1
TESTS_SLURP_DBADAPTER_MYSQL_PORT: ${{ job.services.mysql.ports[3306] }}
- name: Submit test coverage to Coveralls
run: vendor/bin/php-coveralls
env:
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
if: success() && matrix.php-version == '8.0' && matrix.composer-flag == '--prefer-dist'