-
-
Notifications
You must be signed in to change notification settings - Fork 42
Expand file tree
/
Copy pathdocker-compose.e2e-overlay.yml
More file actions
34 lines (32 loc) · 1.46 KB
/
Copy pathdocker-compose.e2e-overlay.yml
File metadata and controls
34 lines (32 loc) · 1.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# Overlay used by .github/workflows/build.yaml `smoke_docker` job to run the
# 4 cypress journey specs against the dockerised stack. Layered on top of
# docker-compose.prod.yml so the same image, volumes, healthcheck, and
# network wiring are exercised - only the bits cypress needs are changed:
#
# - WebUI is pre-seeded with ENCRYPTION_KEY/SESSION_KEY so it boots
# straight into normal mode (no /setup wizard).
# - WebUI uses root + the seeded `bm_e2e_tests` database so it can read
# the fixtures `node cypress/setup.js` writes (the default `bmwebui`
# mysql user only has access to `bm_webui`).
# - MySQL exposes port 3306 to the host so `cypress/setup.js` can run
# migrations + seed fixtures from the runner before WebUI starts.
#
# Usage:
# docker compose -f docker-compose.prod.yml -f docker-compose.e2e-overlay.yml up -d
#
# Required environment variables (set by the workflow):
# MYSQL_ROOT_PASSWORD, MYSQL_PASSWORD - already required by the prod compose
# E2E_ENCRYPTION_KEY, E2E_SESSION_KEY - hex keys used by both seed + WebUI
services:
webui:
environment:
DB_USER: root
DB_PASSWORD: ${MYSQL_ROOT_PASSWORD:?MYSQL_ROOT_PASSWORD is required}
DB_NAME: bm_e2e_tests
ENCRYPTION_KEY: ${E2E_ENCRYPTION_KEY:?E2E_ENCRYPTION_KEY is required}
SESSION_KEY: ${E2E_SESSION_KEY:?E2E_SESSION_KEY is required}
CONTACT_EMAIL: admin@banmanagement.com
SERVER_FOOTER_NAME: BanManagement
mysql:
ports:
- "3306:3306"