Files
wifi-densepose/vendor/ruvector/examples/edge-net/tests/docker-compose.test.yml

113 lines
3.2 KiB
YAML

# @ruvector/edge-net Integration Test Environment
#
# Tests real credit flow with 3 contributor containers and 1 consumer.
# Verifies:
# - Contributors earn credits for CPU work
# - Jobs are distributed to contributors (not local)
# - Credits are correctly debited from consumer
# - Credits are correctly credited to contributors
# - Ledger accounting is accurate
#
# Usage:
# docker-compose -f tests/docker-compose.test.yml up -d
# docker-compose -f tests/docker-compose.test.yml logs -f
# docker-compose -f tests/docker-compose.test.yml down -v
version: '3.8'
services:
# ============================================
# Contributor 1 - 50% CPU
# ============================================
contributor-1:
build:
context: ../pkg
dockerfile: ../tests/Dockerfile.contributor
container_name: edge-net-contributor-1
environment:
- CONTRIBUTOR_ID=contributor-1
- CPU_LIMIT=50
- RELAY_URL=wss://edge-net-relay-875130704813.us-central1.run.app
- LOG_LEVEL=info
volumes:
- contributor-1-data:/root/.ruvector
networks:
- edge-net-test
restart: unless-stopped
# ============================================
# Contributor 2 - 40% CPU
# ============================================
contributor-2:
build:
context: ../pkg
dockerfile: ../tests/Dockerfile.contributor
container_name: edge-net-contributor-2
environment:
- CONTRIBUTOR_ID=contributor-2
- CPU_LIMIT=40
- RELAY_URL=wss://edge-net-relay-875130704813.us-central1.run.app
- LOG_LEVEL=info
volumes:
- contributor-2-data:/root/.ruvector
networks:
- edge-net-test
restart: unless-stopped
# ============================================
# Contributor 3 - 30% CPU
# ============================================
contributor-3:
build:
context: ../pkg
dockerfile: ../tests/Dockerfile.contributor
container_name: edge-net-contributor-3
environment:
- CONTRIBUTOR_ID=contributor-3
- CPU_LIMIT=30
- RELAY_URL=wss://edge-net-relay-875130704813.us-central1.run.app
- LOG_LEVEL=info
volumes:
- contributor-3-data:/root/.ruvector
networks:
- edge-net-test
restart: unless-stopped
# ============================================
# Test Runner / Consumer
# ============================================
test-runner:
build:
context: ../pkg
dockerfile: ../tests/Dockerfile.test-runner
container_name: edge-net-test-runner
environment:
- RELAY_URL=wss://edge-net-relay-875130704813.us-central1.run.app
- LOG_LEVEL=debug
- CONTRIBUTORS=contributor-1,contributor-2,contributor-3
volumes:
- test-results:/results
- ../tests:/app/tests:ro
networks:
- edge-net-test
depends_on:
- contributor-1
- contributor-2
- contributor-3
# ============================================
# Networks
# ============================================
networks:
edge-net-test:
driver: bridge
# ============================================
# Volumes
# ============================================
volumes:
contributor-1-data:
contributor-2-data:
contributor-3-data:
test-results: