-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.test.yml
More file actions
70 lines (65 loc) · 1.82 KB
/
Copy pathdocker-compose.test.yml
File metadata and controls
70 lines (65 loc) · 1.82 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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# Copyright 2026 Firefly Software Foundation
#
# Overlay used by integration tests. Adds:
#
# - mock-llm -- OpenAI-compatible canned responder for deterministic tests
# - webhook-sink -- catches outbound webhook deliveries for assertion
#
# Both API and worker are pointed at the mock LLM via OPENAI_BASE_URL +
# the test's chosen FLYDOCS_MODEL.
services:
mock-llm:
build:
context: tests/fixtures/mock_llm
dockerfile: Dockerfile
container_name: flydocs-mock-llm
ports:
- "${MOCK_LLM_PORT:-8500}:8500"
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost:8500/health"]
interval: 5s
timeout: 3s
retries: 20
webhook-sink:
image: python:3.13-slim
container_name: flydocs-webhook-sink
working_dir: /app
command: ["python", "-u", "/app/webhook_sink.py"]
volumes:
- ./tests/fixtures/webhook_sink:/app:ro
- webhook_sink_data:/data
ports:
- "${WEBHOOK_SINK_PORT:-8600}:8600"
healthcheck:
test: ["CMD", "wget", "-qO-", "http://localhost:8600/health"]
interval: 5s
timeout: 3s
retries: 20
api:
environment:
FLYDOCS_MODEL: "openai:flydocs-mock"
FLYDOCS_FALLBACK_MODEL: ""
OPENAI_API_KEY: "mock-key"
OPENAI_BASE_URL: "http://mock-llm:8500/v1"
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
mock-llm:
condition: service_healthy
worker:
environment:
FLYDOCS_MODEL: "openai:flydocs-mock"
FLYDOCS_FALLBACK_MODEL: ""
OPENAI_API_KEY: "mock-key"
OPENAI_BASE_URL: "http://mock-llm:8500/v1"
depends_on:
api:
condition: service_healthy
mock-llm:
condition: service_healthy
webhook-sink:
condition: service_healthy
volumes:
webhook_sink_data: