Files
wehub-resource-sync 75f3dd141c
CodeQL / Analyze (go) (push) Has been cancelled
CodeQL / Analyze (actions) (push) Has been cancelled
CodeQL / Analyze (javascript-typescript) (push) Has been cancelled
CI and Release / lint-frontend (push) Has been cancelled
CI and Release / dockerfile-scan (push) Has been cancelled
CI and Release / test-frontend (push) Has been cancelled
CI and Release / lint-verification-agent (push) Has been cancelled
CI and Release / test-verification-agent (push) Has been cancelled
CI and Release / e2e-verification-agent (push) Has been cancelled
CI and Release / test-backend (push) Has been cancelled
CI and Release / build-dev-image (push) Has been cancelled
CI and Release / push-dev-image (push) Has been cancelled
CI and Release / build-image (push) Has been cancelled
CI and Release / build-verification-image (push) Has been cancelled
CI and Release / determine-version (push) Has been cancelled
CI and Release / push-image (push) Has been cancelled
CI and Release / push-verification-image (12) (push) Has been cancelled
CI and Release / lint-backend (push) Has been cancelled
CI and Release / push-verification-image (17) (push) Has been cancelled
CI and Release / push-verification-image (18) (push) Has been cancelled
CI and Release / release (push) Has been cancelled
CI and Release / publish-helm-chart (push) Has been cancelled
CI and Release / push-verification-image (13) (push) Has been cancelled
CI and Release / push-verification-image (14) (push) Has been cancelled
CI and Release / push-verification-image (15) (push) Has been cancelled
CI and Release / push-verification-image (16) (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 13:11:07 +08:00

66 lines
2.4 KiB
YAML

services:
e2e-agent-builder:
build:
context: ..
dockerfile: e2e/Dockerfile.agent-builder
volumes:
- ./artifacts:/artifacts
container_name: e2e-verification-agent-builder
e2e-fixture-gen:
build:
context: .
dockerfile: Dockerfile.fixture-gen
volumes:
- ./artifacts:/artifacts
# The entrypoint spawns one sibling postgres:N container per supported
# major (12..18) and pipes pg_dump out via docker exec, so it talks to
# the host daemon the same way e2e-agent-runner does.
- /var/run/docker.sock:/var/run/docker.sock
container_name: e2e-verification-fixture-gen
e2e-mock-server:
build:
context: .
dockerfile: Dockerfile.mock-server
volumes:
- ./artifacts:/artifacts:ro
container_name: e2e-verification-mock-server
# Published to host so e2e-agent-runner (network_mode: host) can reach it
# via 127.0.0.1:<port> — same path the spawned Postgres ports use. Host
# port defaults to 4050; override via E2E_MOCK_SERVER_PORT in
# agent/verification/e2e/.env if 4050 is already taken.
ports:
- "${E2E_MOCK_SERVER_PORT:-4050}:4050"
healthcheck:
test: ["CMD", "wget", "-q", "--spider", "http://127.0.0.1:4050/health"]
interval: 2s
timeout: 5s
retries: 10
e2e-agent-runner:
build:
context: .
dockerfile: Dockerfile.agent-runner
volumes:
- ./artifacts:/opt/agent/artifacts:ro
- ./scripts:/opt/agent/scripts:ro
# The agent's Docker SDK client spawns the ephemeral Postgres containers
# on the host daemon; pg_restore runs inside those containers (no host
# client, no assets bundle).
- /var/run/docker.sock:/var/run/docker.sock
# Mirrors production: the agent runs directly on the VM, so 127.0.0.1 IS
# the host. Spawned Postgres containers publish 5432 to a random host port
# bound to the host's 127.0.0.1 (dockerengine.go binds {HostIP:"127.0.0.1",
# HostPort:"0"}); the agent-process verifier reaches them on that loopback.
# A bridge-network runner cannot see those ports — its 127.0.0.1 is its
# own. Linux-only; document accordingly.
network_mode: host
environment:
- E2E_MOCK_SERVER_PORT=${E2E_MOCK_SERVER_PORT:-4050}
depends_on:
e2e-mock-server:
condition: service_healthy
container_name: e2e-verification-agent-runner
command: ["bash", "/opt/agent/scripts/run-all.sh"]