expand support for php 8.2 and 8.3 (#19) #44
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Tests | |
on: | |
push: | |
branches: [ main ] | |
pull_request: | |
branches: [ main ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
php-version: ['7.4', '8.0', '8.1', '8.2', '8.3'] | |
mysql-version: ['5.7', '8.0'] | |
composer-flag: | |
- '--prefer-dist' | |
- '--prefer-stable --prefer-lowest' | |
services: | |
mysql: | |
image: mysql:${{ matrix.mysql-version }} | |
env: | |
MYSQL_ALLOW_EMPTY_PASSWORD: yes | |
MYSQL_DATABASE: schnoop_testing | |
ports: | |
- 3306:3306 | |
options: >- | |
--health-cmd="mysqladmin ping" | |
--health-interval=10s | |
--health-timeout=5s | |
--health-retries=3 | |
name: Test PHP ${{ matrix.php-version }} / MySQL ${{ matrix.mysql-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 }} --no-interaction | |
# This is necessary for older dev packages that do not have | |
# appropriate upper PHP compatibility version constraints. | |
- name: Update Composer Dev dependencies | |
run: composer update phpunit/phpunit --prefer-dist --no-interaction --with-dependencies | |
- name: Run Code Style Check for PHP ${{ matrix.php-version }} | |
run: composer run-script style-check | |
if: matrix.php-version == '8.2' && matrix.composer-flag == '--prefer-dist' | |
- name: Run tests for PHP ${{ matrix.php-version }} | |
run: composer run-script test | |
env: | |
TESTS_SCHNOOP_DBADAPTER_MYSQL_HOST: 127.0.0.1 | |
TESTS_SCHNOOP_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 == '7.4' && matrix.composer-flag == '--prefer-dist' |