Skip to content

feat: enhance sorting functionality with multi-order support and null… #157

feat: enhance sorting functionality with multi-order support and null…

feat: enhance sorting functionality with multi-order support and null… #157

Workflow file for this run

name: Database
on:
push:
paths:
- ".github/workflows/database.yml"
- "src/System/Database/**"
- "tests/DataBase/**"
branches:
- master
pull_request:
paths:
- ".github/workflows/database.yml"
- "src/System/Database/**"
- "tests/DataBase/**"
jobs:
mysql_57:
runs-on: ubuntu-24.04
services:
mysql:
image: mysql:5.7
env:
MYSQL_ALLOW_EMPTY_PASSWORD: yes
MYSQL_DATABASE: forge
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
strategy:
fail-fast: true
name: MySQL 5.7
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql
tools: composer:v2
coverage: none
- name: Install dependencies
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 5
command: composer update --prefer-stable --prefer-dist --no-interaction --no-progress
- name: Execute tests
run: vendor/bin/phpunit tests/DataBase --exclude-group not-for-mysql5.7
env:
DB_CONNECTION: mysql
DB_USERNAME: root
mysql_8:
runs-on: ubuntu-24.04
services:
mysql:
image: mysql:8
env:
MYSQL_ALLOW_EMPTY_PASSWORD: yes
MYSQL_DATABASE: forge
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3
strategy:
fail-fast: true
name: MySQL 8
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql
tools: composer:v2
coverage: none
- name: Install dependencies
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 5
command: composer update --prefer-stable --prefer-dist --no-interaction --no-progress
- name: Execute tests
run: vendor/bin/phpunit tests/DataBase
env:
DB_CONNECTION: mysql
DB_USERNAME: root
mariadb:
runs-on: ubuntu-24.04
services:
mariadb:
image: mariadb:10
env:
MARIADB_ALLOW_EMPTY_ROOT_PASSWORD: yes
MARIADB_DATABASE: forge
ports:
- 3306:3306
options: --health-cmd="healthcheck.sh --connect --innodb_initialized" --health-interval=10s --health-timeout=5s --health-retries=3
strategy:
fail-fast: true
name: MariaDB 10
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.1
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_mysql, :php-psr
tools: composer:v2
coverage: none
- name: Install dependencies
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 5
command: composer update --prefer-stable --prefer-dist --no-interaction --no-progress
- name: Execute tests
run: vendor/bin/phpunit tests/DataBase
env:
DB_CONNECTION: mariadb