Some checks failed
deploy / deploy (push) Failing after 1m35s
Proof: first non-mocked tradeable loop for one pair using funded NEAR Intents inventory, Kafka, and PostgreSQL. Assumptions: solver-side execution is performed by signed token_diff quote responses over the Solver Relay; EURe is treated as 1:1 with EUR; k3s runtime uses unrip-dev.near as the named signer account. Still fake: signer key is not yet registered on intents.near, strategy and executor remain disarmed by default, and no live mainnet quote response has been submitted from this repo yet.
126 lines
3 KiB
YAML
126 lines
3 KiB
YAML
# Local/dev runtime reference for the active implementation turn.
|
|
services:
|
|
redpanda:
|
|
image: docker.redpanda.com/redpandadata/redpanda:v24.3.9
|
|
command:
|
|
- redpanda
|
|
- start
|
|
- --overprovisioned
|
|
- --smp
|
|
- "1"
|
|
- --memory
|
|
- "1G"
|
|
- --reserve-memory
|
|
- "0M"
|
|
- --node-id
|
|
- "0"
|
|
- --check=false
|
|
- --kafka-addr
|
|
- internal://0.0.0.0:9092,external://0.0.0.0:19092
|
|
- --advertise-kafka-addr
|
|
- internal://redpanda:9092,external://127.0.0.1:19092
|
|
- --pandaproxy-addr
|
|
- internal://0.0.0.0:8082
|
|
- --advertise-pandaproxy-addr
|
|
- internal://redpanda:8082
|
|
ports:
|
|
- "127.0.0.1:19092:19092"
|
|
volumes:
|
|
- redpanda-data:/var/lib/redpanda/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "rpk cluster health | grep -q 'Healthy: *true'"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
start_period: 20s
|
|
|
|
postgres:
|
|
image: postgres:16-bookworm
|
|
environment:
|
|
POSTGRES_DB: unrip
|
|
POSTGRES_USER: unrip
|
|
POSTGRES_PASSWORD: unrip
|
|
ports:
|
|
- "127.0.0.1:15432:5432"
|
|
volumes:
|
|
- postgres-data:/var/lib/postgresql/data
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "pg_isready -U unrip -d unrip"]
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
|
|
near-intents-ingest:
|
|
build: .
|
|
command: ["node", "src/apps/near-intents-ingest.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
market-reference-ingest:
|
|
build: .
|
|
command: ["node", "src/apps/market-reference-ingest.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
liquidity-manager:
|
|
build: .
|
|
command: ["node", "src/apps/liquidity-manager.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
volumes:
|
|
- liquidity-state:/var/lib/unrip/liquidity-state
|
|
|
|
inventory-sync:
|
|
build: .
|
|
command: ["node", "src/apps/inventory-sync.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
history-writer:
|
|
build: .
|
|
command: ["node", "src/apps/history-writer.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
postgres:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
strategy-engine:
|
|
build: .
|
|
command: ["node", "src/apps/strategy-engine.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
|
|
trade-executor:
|
|
build: .
|
|
command: ["node", "src/apps/trade-executor.mjs"]
|
|
env_file: [.env]
|
|
depends_on:
|
|
redpanda:
|
|
condition: service_healthy
|
|
restart: unless-stopped
|
|
volumes:
|
|
- executor-state:/var/lib/unrip/executor-state
|
|
|
|
volumes:
|
|
redpanda-data:
|
|
postgres-data:
|
|
executor-state:
|
|
liquidity-state:
|