mirror of
https://github.com/archtechx/tenancy.git
synced 2025-12-12 19:34:04 +00:00
* added support for microsoft sql server database * added support for microsoft sql server database * trigger ci * revert change * trigger ci * Try installing pdo_sqlsrv * different approach for installing sqlsrv via pecl * add dependencies * add gnupg2 * Update Dockerfile * try skipping msodbcsql17 * Update Dockerfile * add dependency back * update before installing * try to add mssql * mssql host * TENANCY_TEST_MSSQL_HOST env var * add env vars for mssql * add sqlsrv vars to TestCase * rename vars to SQLSRV [skip ci] * MSSQL -> SQLSRV Co-authored-by: Samuel Štancl <samuel@archte.ch> Co-authored-by: Samuel Štancl <samuel.stancl@gmail.com>
77 lines
2.3 KiB
YAML
77 lines
2.3 KiB
YAML
version: '2.4'
|
|
services:
|
|
test:
|
|
build:
|
|
context: .
|
|
args:
|
|
PHP_VERSION: ${PHP_VERSION:-8.1}
|
|
depends_on:
|
|
mysql:
|
|
condition: service_healthy
|
|
postgres:
|
|
condition: service_healthy
|
|
redis:
|
|
condition: service_healthy
|
|
volumes:
|
|
- .:/var/www/html:delegated
|
|
environment:
|
|
DOCKER: 1
|
|
DB_PASSWORD: password
|
|
DB_USERNAME: root
|
|
DB_DATABASE: main
|
|
TENANCY_TEST_REDIS_HOST: redis
|
|
TENANCY_TEST_MYSQL_HOST: mysql
|
|
TENANCY_TEST_PGSQL_HOST: postgres
|
|
TENANCY_TEST_SQLSRV_HOST: mssql
|
|
TENANCY_TEST_SQLSRV_USERNAME: sa
|
|
TENANCY_TEST_SQLSRV_PASSWORD: P@ssword
|
|
stdin_open: true
|
|
tty: true
|
|
mysql:
|
|
image: mysql:5.7
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: password
|
|
MYSQL_DATABASE: main
|
|
MYSQL_USER: user # redundant
|
|
MYSQL_PASSWORD: password
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
|
|
timeout: 10s
|
|
retries: 10
|
|
mysql2:
|
|
image: mysql:5.7
|
|
environment:
|
|
MYSQL_ROOT_PASSWORD: password
|
|
MYSQL_DATABASE: main
|
|
MYSQL_USER: user # redundant
|
|
MYSQL_PASSWORD: password
|
|
healthcheck:
|
|
test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"]
|
|
timeout: 10s
|
|
retries: 10
|
|
postgres:
|
|
image: postgres:11
|
|
environment:
|
|
POSTGRES_PASSWORD: password
|
|
POSTGRES_USER: root # superuser name
|
|
POSTGRES_DB: main
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U postgres"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 5
|
|
redis:
|
|
image: redis:alpine
|
|
healthcheck:
|
|
test: ["CMD", "redis-cli", "ping"]
|
|
interval: 1s
|
|
timeout: 3s
|
|
retries: 30
|
|
mssql:
|
|
image: mcr.microsoft.com/mssql/server:2019-latest
|
|
ports:
|
|
- 1433:1433
|
|
environment:
|
|
- ACCEPT_EULA=Y
|
|
- SA_PASSWORD=P@ssword # todo reuse values from env above
|
|
# todo missing health check
|