You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
108 lines
2.6 KiB
108 lines
2.6 KiB
# Negentropy (NIP-77) Interop Test Infrastructure |
|
# |
|
# Tests NIP-77 negentropy sync between: |
|
# - strfry (client) <-> ORLY (server) |
|
# - ORLY (client) <-> ORLY (server) via orly sync CLI |
|
# |
|
# Usage (from this directory): |
|
# docker compose build |
|
# docker compose up -d |
|
# ./comprehensive-test.sh |
|
# docker compose down -v |
|
|
|
services: |
|
# Strfry relay - has native negentropy support and sync command |
|
strfry: |
|
build: |
|
context: . |
|
dockerfile: Dockerfile.strfry |
|
ports: |
|
- "7777:7777" |
|
volumes: |
|
- strfry-data:/strfry-db |
|
- ./strfry.conf:/etc/strfry.conf:ro |
|
networks: |
|
- negentropy-test |
|
healthcheck: |
|
test: ["CMD", "curl", "-sf", "http://localhost:7777"] |
|
interval: 5s |
|
timeout: 5s |
|
retries: 10 |
|
start_period: 10s |
|
|
|
# ORLY relay 1 with embedded negentropy (NIP-77 server) |
|
orly-relay-1: |
|
build: |
|
context: ../.. |
|
dockerfile: tests/negentropy/Dockerfile.orly |
|
ports: |
|
- "3334:3334" |
|
environment: |
|
- ORLY_PORT=3334 |
|
- ORLY_DATA_DIR=/data |
|
- ORLY_LOG_LEVEL=debug |
|
- ORLY_NEGENTROPY_ENABLED=true |
|
- ORLY_QUERY_RESULT_LIMIT=10000 |
|
volumes: |
|
- orly-data-1:/data |
|
networks: |
|
- negentropy-test |
|
healthcheck: |
|
test: ["CMD", "curl", "-sf", "http://localhost:3334"] |
|
interval: 5s |
|
timeout: 5s |
|
retries: 10 |
|
start_period: 10s |
|
|
|
# ORLY relay 2 with embedded negentropy (for orly<->orly sync testing) |
|
orly-relay-2: |
|
build: |
|
context: ../.. |
|
dockerfile: tests/negentropy/Dockerfile.orly |
|
ports: |
|
- "3335:3335" |
|
environment: |
|
- ORLY_PORT=3335 |
|
- ORLY_DATA_DIR=/data |
|
- ORLY_LOG_LEVEL=debug |
|
- ORLY_NEGENTROPY_ENABLED=true |
|
- ORLY_QUERY_RESULT_LIMIT=10000 |
|
volumes: |
|
- orly-data-2:/data |
|
networks: |
|
- negentropy-test |
|
healthcheck: |
|
test: ["CMD", "curl", "-sf", "http://localhost:3335"] |
|
interval: 5s |
|
timeout: 5s |
|
retries: 10 |
|
start_period: 10s |
|
|
|
# Test runner with event-generator, orly CLI, and websocat |
|
test-runner: |
|
build: |
|
context: ../.. |
|
dockerfile: tests/negentropy/Dockerfile.test-runner |
|
environment: |
|
- STRFRY_URL=ws://strfry:7777 |
|
- ORLY1_URL=ws://orly-relay-1:3334 |
|
- ORLY2_URL=ws://orly-relay-2:3335 |
|
depends_on: |
|
strfry: |
|
condition: service_healthy |
|
orly-relay-1: |
|
condition: service_healthy |
|
orly-relay-2: |
|
condition: service_healthy |
|
networks: |
|
- negentropy-test |
|
command: ["sleep", "infinity"] |
|
|
|
volumes: |
|
strfry-data: |
|
orly-data-1: |
|
orly-data-2: |
|
|
|
networks: |
|
negentropy-test: |
|
driver: bridge
|
|
|