Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions .github/workflows/mariadb.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
on:
pull_request:
paths: &paths
- 'resources/**'
- 'src/**'
- 'tests/**'
- '.github/workflows/mariadb.yml'
- 'composer.json'
- 'phpunit.xml.dist'

push:
branches: ['master']
paths: *paths

name: mariadb

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
uses: yiisoft/actions/.github/workflows/db-mariadb.yml@master
79 changes: 6 additions & 73 deletions .github/workflows/mssql.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
on:
pull_request:
paths:
paths: &paths
- 'resources/**'
- 'src/**'
- 'tests/**'
Expand All @@ -10,84 +10,17 @@ on:

push:
branches: ['master']
paths:
- 'resources/**'
- 'src/**'
- 'tests/**'
- '.github/workflows/mssql.yml'
- 'composer.json'
- 'phpunit.xml.dist'
paths: *paths

name: mssql

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
name: PHP ${{ matrix.php }}-mssql

env:
extensions: pdo_sqlsrv

runs-on: ubuntu-latest

strategy:
matrix:
php:
- 8.1
- 8.2
- 8.3
- 8.4
- 8.5

services:
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
env:
SA_PASSWORD: YourStrong!Passw0rd
ACCEPT_EULA: Y
MSSQL_PID: Developer
ports:
- 1433:1433
options: --name=mssql --health-cmd="/opt/mssql-tools18/bin/sqlcmd -C -S localhost -U SA -P 'YourStrong!Passw0rd' -Q 'SELECT 1'" --health-interval=10s --health-timeout=5s --health-retries=3

steps:
- name: Install ODBC driver.
run: |
sudo curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
sudo apt-get clean
sudo apt-get update
sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18

- name: Create MS SQL Database.
run: docker exec -i mssql /opt/mssql-tools18/bin/sqlcmd -C -S localhost -U SA -P 'YourStrong!Passw0rd' -Q 'CREATE DATABASE yiitest'

- name: Checkout.
uses: actions/checkout@v4

- name: Install PHP with extensions.
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
ini-values: date.timezone='UTC'
coverage: pcov

- name: Install Composer dependencies + required yiisoft/db and yiisoft/db-mssql
uses: yiisoft/actions/install-packages@master
with:
composer-root-version: 2.0.0
packages: >-
['db', 'db-mssql']

- name: Run tests with phpunit.
run: vendor/bin/phpunit --testsuite=Mssql --coverage-clover=coverage.xml --colors=always --display-warnings --display-deprecations

- name: Upload coverage to Codecov.
if: matrix.php == '8.5'
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
uses: yiisoft/actions/.github/workflows/db-mssql.yml@master
69 changes: 6 additions & 63 deletions .github/workflows/mysql.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
on:
pull_request:
paths:
paths: &paths
- 'resources/**'
- 'src/**'
- 'tests/**'
Expand All @@ -10,74 +10,17 @@ on:

push:
branches: ['master']
paths:
- 'resources/**'
- 'src/**'
- 'tests/**'
- '.github/workflows/mysql.yml'
- 'composer.json'
- 'phpunit.xml.dist'
paths: *paths

name: mysql

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
name: PHP ${{ matrix.php }}

env:
extensions: pdo_mysql

runs-on: ubuntu-latest

strategy:
matrix:
php:
- 8.1
- 8.2
- 8.3
- 8.4
- 8.5

services:
mysql:
image: mysql:latest
env:
MYSQL_ALLOW_EMPTY_PASSWORD: true
MYSQL_PASSWORD: ''
MYSQL_DATABASE: yiitest
ports:
- 3306:3306
options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3

steps:
- name: Checkout.
uses: actions/checkout@v4

- name: Install PHP with extensions.
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
ini-values: date.timezone='UTC'
coverage: pcov

- name: Install Composer dependencies + required yiisoft/db and yiisoft/db-mysql
uses: yiisoft/actions/install-packages@master
with:
composer-root-version: 2.0.0
packages: >-
['db', 'db-mysql']

- name: Run tests with phpunit.
run: vendor/bin/phpunit --testsuite=Mysql --coverage-clover=coverage.xml --colors=always --display-warnings --display-deprecations

- name: Upload coverage to Codecov.
if: matrix.php == '8.5'
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
uses: yiisoft/actions/.github/workflows/db-mysql.yml@master
73 changes: 6 additions & 67 deletions .github/workflows/oracle.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
on:
pull_request:
paths:
paths: &paths
- 'resources/**'
- 'src/**'
- 'tests/**'
Expand All @@ -10,78 +10,17 @@ on:

push:
branches: ['master']
paths:
- 'resources/**'
- 'src/**'
- 'tests/**'
- '.github/workflows/oracle.yml'
- 'composer.json'
- 'phpunit.xml.dist'
paths: *paths

name: oracle

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
name: PHP ${{ matrix.php }}

env:
extensions: pdo_oci

runs-on: ubuntu-latest

strategy:
matrix:
php:
- 8.1
- 8.2
- 8.3
- 8.4
- 8.5

services:
oci:
image: gvenzl/oracle-xe:latest
ports:
- 1521:1521
env:
ORACLE_DATABASE : yiitest
ORACLE_PASSWORD : root
options: >-
--name=oci
--health-cmd healthcheck.sh
--health-interval 10s
--health-timeout 5s
--health-retries 10
steps:
- name: Checkout.
uses: actions/checkout@v4

- name: Install PHP with extensions.
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
ini-values: date.timezone='UTC'
coverage: pcov

- name: Install Composer dependencies + required yiisoft/db and yiisoft/db-oracle
uses: yiisoft/actions/install-packages@master
with:
composer-root-version: 2.0.0
packages: >-
['db', 'db-oracle']
- name: Run tests with phpunit.
run: vendor/bin/phpunit --testsuite=Oracle --coverage-clover=coverage.xml --colors=always --display-warnings --display-deprecations

- name: Upload coverage to Codecov.
if: matrix.php == '8.5'
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
uses: yiisoft/actions/.github/workflows/db-oracle.yml@master
69 changes: 6 additions & 63 deletions .github/workflows/pgsql.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
on:
pull_request:
paths:
paths: &paths
- 'resources/**'
- 'src/**'
- 'tests/**'
Expand All @@ -10,74 +10,17 @@ on:

push:
branches: ['master']
paths:
- 'resources/**'
- 'src/**'
- 'tests/**'
- '.github/workflows/pgsql.yml'
- 'composer.json'
- 'phpunit.xml.dist'
paths: *paths

name: pgsql

permissions:
contents: read

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
tests:
name: PHP ${{ matrix.php }}-pgsql

env:
extensions: pdo_pgsql

runs-on: ubuntu-latest

strategy:
matrix:
php:
- 8.1
- 8.2
- 8.3
- 8.4
- 8.5

services:
postgres:
image: postgres:18
env:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_DB: yiitest
ports:
- 5432:5432
options: --name=postgres --health-cmd="pg_isready" --health-interval=10s --health-timeout=5s --health-retries=3

steps:
- name: Checkout.
uses: actions/checkout@v4

- name: Install PHP with extensions.
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: ${{ env.extensions }}
ini-values: date.timezone='UTC'
coverage: pcov

- name: Install Composer dependencies + required yiisoft/db and yiisoft/db-pgsql
uses: yiisoft/actions/install-packages@master
with:
composer-root-version: 2.0.1
packages: >-
['db', 'db-pgsql']

- name: Run tests with phpunit.
run: vendor/bin/phpunit --testsuite=Pgsql --coverage-clover=coverage.xml --colors=always --display-warnings --display-deprecations

- name: Upload coverage to Codecov.
if: matrix.php == '8.5'
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./coverage.xml
uses: yiisoft/actions/.github/workflows/db-pgsql.yml@master
Loading