auth tests
This commit is contained in:
@@ -42,6 +42,41 @@ services:
|
||||
build:
|
||||
target: development
|
||||
command: ["php", "artisan", "serve", "--host=0.0.0.0", "--port=8000"]
|
||||
# db-test si avvia insieme al backend (merge col depends_on del compose base:
|
||||
# db + redis). Così `make test` trova sempre il DB di test pronto senza doverlo
|
||||
# accendere a mano. È in override → presente solo in dev/CI, mai in produzione.
|
||||
depends_on:
|
||||
db-test:
|
||||
condition: service_healthy
|
||||
|
||||
# DB dedicato ai test (SOLO dev/CI — sta qui in override, non nel compose base
|
||||
# né in produzione). Isolamento FISICO dal db di sviluppo: la suite punta qui
|
||||
# (DB_HOST=db-test, vedi target `make test`), così nessun RefreshDatabase può
|
||||
# raggiungere e azzerare `dyncoll`. tmpfs = dati in RAM → effimeri e veloci.
|
||||
# Non è una replica dei DATI: i test ricostruiscono lo schema dalle migration e
|
||||
# vogliono un DB vuoto; serve solo lo stesso motore (mysql:8.4) del db di sviluppo.
|
||||
db-test:
|
||||
image: mysql:8.4
|
||||
container_name: dyncoll_db_test
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
MYSQL_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}
|
||||
MYSQL_DATABASE: dyncoll_test
|
||||
MYSQL_USER: ${DB_USERNAME}
|
||||
MYSQL_PASSWORD: ${DB_PASSWORD}
|
||||
tmpfs:
|
||||
- /var/lib/mysql
|
||||
networks:
|
||||
- internal
|
||||
healthcheck:
|
||||
# Stessa logica del db dev (docker-compose.yml): $$ = $ letterale espanso a
|
||||
# runtime dalla shell del container; password quotata per i caratteri speciali.
|
||||
test: ["CMD-SHELL", "mysqladmin ping -h localhost -u \"$$MYSQL_USER\" -p\"$$MYSQL_PASSWORD\""]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
labels:
|
||||
- "com.docker.compose.project=dyncoll-project"
|
||||
|
||||
# Mailpit: SMTP sink di sviluppo. Cattura tutte le mail (nessuna spedizione reale).
|
||||
# SMTP su 1025 (raggiungibile dal backend come host `mailpit`), Web UI su 8025.
|
||||
|
||||
Reference in New Issue
Block a user