services: wire-sysio-dev: build: context: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} dockerfile: etc/docker/Dockerfile target: platform-dev additional_contexts: clang-18-scripts: ${WIRE_SYSIO_CONTEXT:-./wire-sysio}/scripts/clang-18 app-root: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} image: ${WIRE_SYSIO_IMAGE:-wire/sysio:platform-dev-local} user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /wire volumes: - .:/wire - ./.local/wire-node:/srv/wire-node environment: WIRE_ROOT: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_SYSIO_DIR: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} command: ["bash", "-lc", "sleep infinity"] wire-nodeop: build: context: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} dockerfile: etc/docker/Dockerfile target: platform-dev additional_contexts: clang-18-scripts: ${WIRE_SYSIO_CONTEXT:-./wire-sysio}/scripts/clang-18 app-root: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} image: ${WIRE_SYSIO_IMAGE:-wire/sysio:platform-dev-local} user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /wire init: true volumes: - .:/wire - ./.local/wire-node:/srv/wire-node environment: WIRE_ROOT: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_SYSIO_DIR: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_NODE_ROOT: ${WIRE_NODE_ROOT:-/srv/wire-node/chain-001} WIRE_ARTIFACTS_DIR: /wire/.local/e2e WIRE_ETH_DEPOT_ACCOUNT: ${WIRE_ETH_DEPOT_ACCOUNT:-sysio.dpeth} WIRE_SOL_DEPOT_ACCOUNT: ${WIRE_SOL_DEPOT_ACCOUNT:-sysio.dpsol} WIRE_INSTASWAP_ACCOUNT: ${WIRE_INSTASWAP_ACCOUNT:-sysio.iswap} WIRE_WYIELD_ACCOUNT: ${WIRE_WYIELD_ACCOUNT:-sysio.wyield} WIRE_TEST_USER_ACCOUNT: ${WIRE_TEST_USER_ACCOUNT:-userinsta1} WIRE_BATCH_OPERATOR_ETH_ACCOUNT: ${WIRE_BATCH_OPERATOR_ETH_ACCOUNT:-bopeth111111} WIRE_BATCH_OPERATOR_SOL_ACCOUNT: ${WIRE_BATCH_OPERATOR_SOL_ACCOUNT:-bopsol111111} WIRE_BATCH_OPERATOR_ETH_WIRE_PROVIDER_ID: ${WIRE_BATCH_OPERATOR_ETH_WIRE_PROVIDER_ID:-wire-bopeth-1} WIRE_BATCH_OPERATOR_SOL_WIRE_PROVIDER_ID: ${WIRE_BATCH_OPERATOR_SOL_WIRE_PROVIDER_ID:-wire-bopsol-1} ports: - "${WIRE_HTTP_PORT:-8887}:8887" - "${WIRE_P2P_PORT:-4443}:4443" command: ["bash", "-lc", "bash /wire/wire-nodeop-local.sh"] batch-operator-eth-1: build: context: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} dockerfile: etc/docker/Dockerfile target: platform-dev additional_contexts: clang-18-scripts: ${WIRE_SYSIO_CONTEXT:-./wire-sysio}/scripts/clang-18 app-root: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} image: ${WIRE_SYSIO_IMAGE:-wire/sysio:platform-dev-local} user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /wire init: true volumes: - .:/wire environment: WIRE_ROOT: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_SYSIO_DIR: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_BATCH_OPERATOR_ROUTE: eth WIRE_BATCH_OPERATOR_INDEX: "1" WIRE_BATCH_OPERATOR_ROOT: /wire/.local/wire-batch-operators WIRE_BATCH_OPERATOR_ARTIFACTS_DIR: /wire/.local/e2e WIRE_BATCH_OPERATOR_WIRE_RPC_URL: ${WIRE_BATCH_OPERATOR_WIRE_RPC_URL:-http://wire-nodeop:8887} WIRE_BATCH_OPERATOR_WIRE_DEPOT_ACCOUNT: ${WIRE_BATCH_OPERATOR_ETH_WIRE_DEPOT_ACCOUNT:-sysio.dpeth} WIRE_BATCH_OPERATOR_WIRE_ACCOUNT: ${WIRE_BATCH_OPERATOR_ETH_WIRE_ACCOUNT:-} WIRE_BATCH_OPERATOR_WIRE_PROVIDER_ID: ${WIRE_BATCH_OPERATOR_ETH_WIRE_PROVIDER_ID:-} WIRE_BATCH_OPERATOR_WIRE_PROVIDER_SPEC: ${WIRE_BATCH_OPERATOR_ETH_WIRE_PROVIDER_SPEC:-} WIRE_BATCH_OPERATOR_SOURCE_CLIENT_ID: ${WIRE_BATCH_OPERATOR_ETH_CLIENT_ID:-eth-local-1} WIRE_BATCH_OPERATOR_SOURCE_PROVIDER_ID: ${WIRE_BATCH_OPERATOR_ETH_PROVIDER_ID:-eth-local-1} WIRE_BATCH_OPERATOR_SOURCE_PROVIDER_SPEC: ${WIRE_BATCH_OPERATOR_ETH_PROVIDER_SPEC:-} WIRE_BATCH_OPERATOR_SOURCE_RPC_URL: ${WIRE_BATCH_OPERATOR_ETH_RPC_URL:-http://hardhat:8545} WIRE_BATCH_OPERATOR_ETH_CHAIN_ID: ${WIRE_BATCH_OPERATOR_ETH_CHAIN_ID:-31337} WIRE_BATCH_OPERATOR_ETH_ABI_FILE: ${WIRE_BATCH_OPERATOR_ETH_ABI_FILE:-/wire/.local/e2e/ethereum-outpost-abi.json} WIRE_BATCH_OPERATOR_ETH_OPP_ADDRESS: ${WIRE_BATCH_OPERATOR_ETH_OPP_ADDRESS:-} WIRE_BATCH_OPERATOR_ETH_OPP_INBOUND_ADDRESS: ${WIRE_BATCH_OPERATOR_ETH_OPP_INBOUND_ADDRESS:-} WIRE_BATCH_OPERATOR_POLL_INTERVAL_MS: ${WIRE_BATCH_OPERATOR_POLL_INTERVAL_MS:-5000} depends_on: wire-nodeop: condition: service_started hardhat: condition: service_started command: ["bash", "-lc", "bash /wire/wire-batch-operator-local.sh eth 1"] batch-operator-sol-1: build: context: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} dockerfile: etc/docker/Dockerfile target: platform-dev additional_contexts: clang-18-scripts: ${WIRE_SYSIO_CONTEXT:-./wire-sysio}/scripts/clang-18 app-root: ${WIRE_SYSIO_CONTEXT:-./wire-sysio} image: ${WIRE_SYSIO_IMAGE:-wire/sysio:platform-dev-local} user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /wire init: true volumes: - .:/wire environment: WIRE_ROOT: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_SYSIO_DIR: /wire/${WIRE_SYSIO_REPO_DIR:-wire-sysio} WIRE_BATCH_OPERATOR_ROUTE: sol WIRE_BATCH_OPERATOR_INDEX: "1" WIRE_BATCH_OPERATOR_ROOT: /wire/.local/wire-batch-operators WIRE_BATCH_OPERATOR_ARTIFACTS_DIR: /wire/.local/e2e WIRE_BATCH_OPERATOR_WIRE_RPC_URL: ${WIRE_BATCH_OPERATOR_WIRE_RPC_URL:-http://wire-nodeop:8887} WIRE_BATCH_OPERATOR_WIRE_DEPOT_ACCOUNT: ${WIRE_BATCH_OPERATOR_SOL_WIRE_DEPOT_ACCOUNT:-sysio.dpsol} WIRE_BATCH_OPERATOR_WIRE_ACCOUNT: ${WIRE_BATCH_OPERATOR_SOL_WIRE_ACCOUNT:-} WIRE_BATCH_OPERATOR_WIRE_PROVIDER_ID: ${WIRE_BATCH_OPERATOR_SOL_WIRE_PROVIDER_ID:-} WIRE_BATCH_OPERATOR_WIRE_PROVIDER_SPEC: ${WIRE_BATCH_OPERATOR_SOL_WIRE_PROVIDER_SPEC:-} WIRE_BATCH_OPERATOR_SOURCE_CLIENT_ID: ${WIRE_BATCH_OPERATOR_SOL_CLIENT_ID:-sol-local-1} WIRE_BATCH_OPERATOR_SOURCE_PROVIDER_ID: ${WIRE_BATCH_OPERATOR_SOL_PROVIDER_ID:-sol-local-1} WIRE_BATCH_OPERATOR_SOURCE_PROVIDER_SPEC: ${WIRE_BATCH_OPERATOR_SOL_PROVIDER_SPEC:-} WIRE_BATCH_OPERATOR_SOURCE_RPC_URL: ${WIRE_BATCH_OPERATOR_SOL_RPC_URL:-http://solana-validator:8899} WIRE_BATCH_OPERATOR_SOL_PROGRAM_ID: ${WIRE_BATCH_OPERATOR_SOL_PROGRAM_ID:-} WIRE_BATCH_OPERATOR_SOL_IDL_FILE: ${WIRE_BATCH_OPERATOR_SOL_IDL_FILE:-/wire/.branch-worktrees/capital-staking-opp-parity/target/idl/liqsol_core.json} WIRE_BATCH_OPERATOR_POLL_INTERVAL_MS: ${WIRE_BATCH_OPERATOR_POLL_INTERVAL_MS:-5000} depends_on: wire-nodeop: condition: service_started solana-validator: condition: service_healthy command: ["bash", "-lc", "bash /wire/wire-batch-operator-local.sh sol 1"] wire-ethereum-dev: image: node:20-bookworm user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /workspace/${WIRE_ETHEREUM_REPO_DIR:-wire-ethereum} volumes: - .:/workspace command: ["bash", "-lc", "sleep infinity"] hardhat: image: node:20-bookworm user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /workspace/${WIRE_ETHEREUM_REPO_DIR:-wire-ethereum} volumes: - .:/workspace ports: - "${HARDHAT_PORT:-8545}:8545" command: ["bash", "-lc", "npm ci && npx hardhat node --hostname 0.0.0.0"] capital-staking-dev: build: context: ${CAPITAL_STAKING_BUILD_CONTEXT:-./capital-staking} dockerfile: docker/anchor-toolchain.Dockerfile image: ${CAPITAL_STAKING_IMAGE:-skunk-net/capital-staking-dev:local} user: "${LOCAL_UID:-1000}:${LOCAL_GID:-1000}" working_dir: /workspace/${CAPITAL_STAKING_REPO_DIR:-capital-staking} volumes: - .:/workspace environment: ANCHOR_PROVIDER_URL: ${ANCHOR_PROVIDER_URL:-http://solana-validator:8899} ANCHOR_WALLET: ${ANCHOR_WALLET:-/workspace/.branch-worktrees/capital-staking-opp-parity/wallets/deploymentWallet/universalDeploymentWallet.json} DOCKER_CLUSTER: "1" RPC_URL: ${RPC_URL:-http://solana-validator:8899} REQUIRED_VALIDATORS: ${REQUIRED_VALIDATORS:-1} SOLANA_RPC: ${SOLANA_RPC:-http://solana-validator:8899} depends_on: solana-validator: condition: service_healthy command: ["bash", "-lc", "sleep infinity"] solana-validator: build: context: ./solana-docker-setup dockerfile: Dockerfile image: ${SOLANA_DOCKER_IMAGE:-skunk-net/solana-validator:local} working_dir: /solana volumes: - solana-validator-data:/solana-data ports: - "${SOLANA_GOSSIP_PORT:-8001}:8001/udp" - "${SOLANA_RPC_PORT:-8899}:8899" - "${SOLANA_WS_PORT:-8900}:8900" - "${SOLANA_FAUCET_PORT:-9900}:9900" environment: IS_GENESIS: "true" NODE_NAME: genesis GOSSIP_HOST: solana-validator GOSSIP_PORT: ${SOLANA_GOSSIP_PORT:-8001} RPC_PORT: 8899 RPC_BIND_ADDRESS: 0.0.0.0 BIND_ADDRESS: 0.0.0.0 FAUCET_ENABLE: "true" FAUCET_ADDRESS: 0.0.0.0 FAUCET_PORT: 9900 SLOTS_PER_EPOCH: ${SOLANA_SLOTS_PER_EPOCH:-64} DATA_DIR: /solana-data/genesis SOLANA_RUN_SH_VALIDATOR_ARGS: ${SOLANA_RUN_SH_VALIDATOR_ARGS:-} ulimits: nofile: soft: 1000000 hard: 1000000 healthcheck: test: ["CMD-SHELL", "curl -fsS http://127.0.0.1:8899/health >/dev/null"] interval: 5s timeout: 5s retries: 60 start_period: 120s volumes: solana-validator-data: