Files
local_webhooks/compose.yaml
T
Valentin Popov 82023483ff
Moodle Plugin CI / Test (mysql) (push) Successful in 3m45s
Moodle Plugin CI / Test (postgresql) (push) Successful in 3m15s
ci: add MySQL 8.4 test lane
2026-08-23 22:58:57 +04:00

77 lines
2.0 KiB
YAML

x-ci: &ci
build:
context: .
dockerfile: .docker/ci/Dockerfile
command:
- /bin/bash
- -lc
- |
set -euo pipefail
php --version
composer --version
node --version
moodle-plugin-ci --version
moodle-plugin-ci install --plugin /plugin --branch v5.2.2 --db-host "$$DB_HOST"
test "$$(git -C /workspace/moodle rev-parse HEAD)" = "acfa383c13dd46c83ca82894a8e95fac273fda33"
moodle-plugin-ci phplint
moodle-plugin-ci phpcs --max-warnings 0
moodle-plugin-ci phpdoc --max-warnings 0
moodle-plugin-ci validate
moodle-plugin-ci savepoints
moodle-plugin-ci phpunit --fail-on-warning
services:
postgres:
image: postgres:16.13-alpine3.22@sha256:caf536ebd910e85473a9f5e2fd1aea360c965c4a911c8555ac1f61b2102006cb
environment:
POSTGRES_HOST_AUTH_METHOD: trust
POSTGRES_USER: postgres
healthcheck:
test: ["CMD-SHELL", "pg_isready -U postgres"]
interval: 2s
timeout: 5s
retries: 15
tmpfs:
- /var/lib/postgresql/data
mysql:
profiles:
- mysql
image: mysql:8.4.11@sha256:b3b90af2a6552ae30c266fdb7d5dd55f3afb72404bb78d37fe8a23eb857fd3fb
environment:
MYSQL_ROOT_PASSWORD: moodle_ci
healthcheck:
test: ["CMD-SHELL", "mysql --protocol=TCP --host=127.0.0.1 --user=root --password=$$MYSQL_ROOT_PASSWORD --execute='SELECT 1' --silent"]
interval: 2s
timeout: 5s
retries: 30
tmpfs:
- /var/lib/mysql
ci:
<<: *ci
depends_on:
postgres:
condition: service_healthy
environment:
DB: pgsql
DB_HOST: postgres
DB_USER: postgres
MOODLE_BRANCH: v5.2.2
NPM_CONFIG_FETCH_RETRIES: 5
ci-mysql:
<<: *ci
profiles:
- mysql
depends_on:
mysql:
condition: service_healthy
environment:
DB: mysqli
DB_HOST: mysql
DB_PASS: moodle_ci
DB_USER: root
MOODLE_BRANCH: v5.2.2
NPM_CONFIG_FETCH_RETRIES: 5