From 2c6187b45d0dd4371d50cada209a74a3a0b2fd76 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 10:32:44 +0700 Subject: [PATCH 01/12] Update workflows --- .github/workflows/mysql.yml | 58 ++----------------------------------- 1 file changed, 2 insertions(+), 56 deletions(-) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index 26d391da..d398c0dc 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -25,59 +25,5 @@ concurrency: 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 + psalm: + uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql From 354661eca0819af358d78481df4fe3bfdc3a0b80 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 10:37:06 +0700 Subject: [PATCH 02/12] Update --- .github/workflows/mysql.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index d398c0dc..14b1028f 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -25,5 +25,5 @@ concurrency: cancel-in-progress: true jobs: - psalm: + tests: uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql From 5fc681534a1c4272fb6d21f4a3a5de080421e2a1 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 10:39:09 +0700 Subject: [PATCH 03/12] Add permissions --- .github/workflows/mysql.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index 14b1028f..c00b285e 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -20,6 +20,9 @@ on: name: mysql +permissions: + contents: read + concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true From 8dab302ec4ebf4f8fae6498415840917261fcfaf Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 10:41:29 +0700 Subject: [PATCH 04/12] Update --- .github/workflows/mysql.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index c00b285e..c58fab7e 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -30,3 +30,4 @@ concurrency: jobs: tests: uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql + From 9075ae590dec350ff0dceaba31b22053e49efc75 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 10:49:14 +0700 Subject: [PATCH 05/12] Update --- .github/workflows/mysql.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index c58fab7e..c00b285e 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -30,4 +30,3 @@ concurrency: jobs: tests: uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql - From d4771d1f342d69f4c60025d157e3e967f24271c0 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 10:52:37 +0700 Subject: [PATCH 06/12] Update --- .github/workflows/mysql.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index c00b285e..c58fab7e 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -30,3 +30,4 @@ concurrency: jobs: tests: uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql + From c172e361a2f4a0cc5902bf7886c3ede0575c1ecc Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 11:21:07 +0700 Subject: [PATCH 07/12] Update sqlite.yml --- .github/workflows/mysql.yml | 11 ++----- .github/workflows/sqlite.yml | 62 ++++-------------------------------- 2 files changed, 8 insertions(+), 65 deletions(-) diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index c58fab7e..f92b8a8b 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -1,6 +1,6 @@ on: pull_request: - paths: + paths: &paths - 'resources/**' - 'src/**' - 'tests/**' @@ -10,13 +10,7 @@ on: push: branches: ['master'] - paths: - - 'resources/**' - - 'src/**' - - 'tests/**' - - '.github/workflows/mysql.yml' - - 'composer.json' - - 'phpunit.xml.dist' + paths: *paths name: mysql @@ -30,4 +24,3 @@ concurrency: jobs: tests: uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql - diff --git a/.github/workflows/sqlite.yml b/.github/workflows/sqlite.yml index fce980d7..12037e90 100644 --- a/.github/workflows/sqlite.yml +++ b/.github/workflows/sqlite.yml @@ -1,6 +1,6 @@ on: pull_request: - paths: + paths: &paths - 'resources/**' - 'src/**' - 'tests/**' @@ -10,67 +10,17 @@ on: push: branches: ['master'] - paths: - - 'resources/**' - - 'src/**' - - 'tests/**' - - '.github/workflows/sqlite.yml' - - 'composer.json' - - 'phpunit.xml.dist' + paths: *paths name: sqlite +permissions: + contents: read + concurrency: group: ${{ github.workflow }}-${{ github.ref }} cancel-in-progress: true jobs: tests: - name: PHP ${{ matrix.php }}-sqlite-${{ matrix.os }} - - env: - extensions: pdo_sqlite - - runs-on: ${{ matrix.os }} - - strategy: - matrix: - os: - - ubuntu-latest - - windows-latest - - php: - - 8.1 - - 8.2 - - 8.3 - - 8.4 - - 8.5 - - 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-sqlite - uses: yiisoft/actions/install-packages@master - with: - composer-root-version: 2.0.0 - packages: >- - ['db', 'db-sqlite'] - - - name: Run tests with phpunit. - run: vendor/bin/phpunit --testsuite=Sqlite --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-sqlite.yml@add-db-mysql From 2a54a820477d54236f6ba75eb7113ff198d75126 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 12:51:09 +0700 Subject: [PATCH 08/12] Update pgsql.yml --- .github/workflows/pgsql.yml | 69 ++++--------------------------------- 1 file changed, 6 insertions(+), 63 deletions(-) diff --git a/.github/workflows/pgsql.yml b/.github/workflows/pgsql.yml index d098aa23..1d2f9ebf 100644 --- a/.github/workflows/pgsql.yml +++ b/.github/workflows/pgsql.yml @@ -1,6 +1,6 @@ on: pull_request: - paths: + paths: &paths - 'resources/**' - 'src/**' - 'tests/**' @@ -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@add-db-mysql From ce1fd6b76e7a0fa5ed47ae70ea279d224e564f78 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 13:53:01 +0700 Subject: [PATCH 09/12] Update mssql.yml --- .github/workflows/mssql.yml | 79 +++---------------------------------- 1 file changed, 6 insertions(+), 73 deletions(-) diff --git a/.github/workflows/mssql.yml b/.github/workflows/mssql.yml index aa0530bf..9bfb745f 100644 --- a/.github/workflows/mssql.yml +++ b/.github/workflows/mssql.yml @@ -1,6 +1,6 @@ on: pull_request: - paths: + paths: &paths - 'resources/**' - 'src/**' - 'tests/**' @@ -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@add-db-mysql From 15022003a10664cbb920fb99c661b65c5d1e91ee Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 14:00:17 +0700 Subject: [PATCH 10/12] Update oracle.yml --- .github/workflows/oracle.yml | 73 +++--------------------------------- 1 file changed, 6 insertions(+), 67 deletions(-) diff --git a/.github/workflows/oracle.yml b/.github/workflows/oracle.yml index f64e57a6..5111aced 100644 --- a/.github/workflows/oracle.yml +++ b/.github/workflows/oracle.yml @@ -1,6 +1,6 @@ on: pull_request: - paths: + paths: &paths - 'resources/**' - 'src/**' - 'tests/**' @@ -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@add-db-mysql From eff7e5d4ea65a2b77d233236b606fc923cf1bcf3 Mon Sep 17 00:00:00 2001 From: Tigrov Date: Mon, 23 Feb 2026 16:26:33 +0700 Subject: [PATCH 11/12] Add mariadb.yml --- .github/workflows/mariadb.yml | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 .github/workflows/mariadb.yml diff --git a/.github/workflows/mariadb.yml b/.github/workflows/mariadb.yml new file mode 100644 index 00000000..32249c27 --- /dev/null +++ b/.github/workflows/mariadb.yml @@ -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@add-db-mysql From c0b1eb51edb599eade6e45191727fe2d1b16f99a Mon Sep 17 00:00:00 2001 From: Tigrov Date: Tue, 24 Feb 2026 12:26:16 +0700 Subject: [PATCH 12/12] Update to master --- .github/workflows/mariadb.yml | 2 +- .github/workflows/mssql.yml | 2 +- .github/workflows/mysql.yml | 2 +- .github/workflows/oracle.yml | 2 +- .github/workflows/pgsql.yml | 2 +- .github/workflows/sqlite.yml | 2 +- 6 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/mariadb.yml b/.github/workflows/mariadb.yml index 32249c27..96afb023 100644 --- a/.github/workflows/mariadb.yml +++ b/.github/workflows/mariadb.yml @@ -23,4 +23,4 @@ concurrency: jobs: tests: - uses: yiisoft/actions/.github/workflows/db-mariadb.yml@add-db-mysql + uses: yiisoft/actions/.github/workflows/db-mariadb.yml@master diff --git a/.github/workflows/mssql.yml b/.github/workflows/mssql.yml index 9bfb745f..932b139b 100644 --- a/.github/workflows/mssql.yml +++ b/.github/workflows/mssql.yml @@ -23,4 +23,4 @@ concurrency: jobs: tests: - uses: yiisoft/actions/.github/workflows/db-mssql.yml@add-db-mysql + uses: yiisoft/actions/.github/workflows/db-mssql.yml@master diff --git a/.github/workflows/mysql.yml b/.github/workflows/mysql.yml index f92b8a8b..2cd95094 100644 --- a/.github/workflows/mysql.yml +++ b/.github/workflows/mysql.yml @@ -23,4 +23,4 @@ concurrency: jobs: tests: - uses: yiisoft/actions/.github/workflows/db-mysql.yml@add-db-mysql + uses: yiisoft/actions/.github/workflows/db-mysql.yml@master diff --git a/.github/workflows/oracle.yml b/.github/workflows/oracle.yml index 5111aced..5811a2de 100644 --- a/.github/workflows/oracle.yml +++ b/.github/workflows/oracle.yml @@ -23,4 +23,4 @@ concurrency: jobs: tests: - uses: yiisoft/actions/.github/workflows/db-oracle.yml@add-db-mysql + uses: yiisoft/actions/.github/workflows/db-oracle.yml@master diff --git a/.github/workflows/pgsql.yml b/.github/workflows/pgsql.yml index 1d2f9ebf..e4020c3a 100644 --- a/.github/workflows/pgsql.yml +++ b/.github/workflows/pgsql.yml @@ -23,4 +23,4 @@ concurrency: jobs: tests: - uses: yiisoft/actions/.github/workflows/db-pgsql.yml@add-db-mysql + uses: yiisoft/actions/.github/workflows/db-pgsql.yml@master diff --git a/.github/workflows/sqlite.yml b/.github/workflows/sqlite.yml index 12037e90..4dbee78b 100644 --- a/.github/workflows/sqlite.yml +++ b/.github/workflows/sqlite.yml @@ -23,4 +23,4 @@ concurrency: jobs: tests: - uses: yiisoft/actions/.github/workflows/db-sqlite.yml@add-db-mysql + uses: yiisoft/actions/.github/workflows/db-sqlite.yml@master