#!/usr/bin/env bash set -euo pipefail root="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" cd "${root}" host="${EVERY_CHANNEL_E2E_HDHR_HOST:-}" channel="${EVERY_CHANNEL_E2E_HDHR_CHANNEL:-}" usage() { cat >&2 <<'EOF' usage: scripts/e2e-mesh-split.sh --host --channel what it does: - runs an ignored E2E test that publishes manifests from one peer and objects from another - subscriber stitches the two streams and enforces --require-manifest notes: - runs inside `nix develop` so FFmpeg headers are present for ac-ffmpeg EOF } while [[ $# -gt 0 ]]; do case "$1" in --host) host="${2:-}" shift 2 ;; --channel) channel="${2:-}" shift 2 ;; -h|--help) usage exit 0 ;; *) echo "error: unknown arg: $1" >&2 usage exit 2 ;; esac done if [[ -z "${host}" || -z "${channel}" ]]; then echo "error: --host and --channel are required" >&2 usage exit 2 fi export EVERY_CHANNEL_E2E_HDHR_HOST="${host}" export EVERY_CHANNEL_E2E_HDHR_CHANNEL="${channel}" nix develop --accept-flake-config -c \ bash -lc 'cargo test -p ec-node --test e2e_mesh_split -- --ignored --nocapture'