mirror of
https://github.com/ruvnet/RuView
synced 2026-06-09 10:13:17 +00:00
2154b6931c
Three changes: 1. Dockerfile.rust now builds sensing-server with `--features mqtt` (ADR-115 HA-DISCO publisher) and also builds + ships the cog-ha-matter binary (ADR-116 Home Assistant + Matter cog with mDNS, embedded broker, RuVector-backed thresholds, Ed25519 witness). Adds EXPOSE 1883 for the embedded MQTT broker. 2. docker-entrypoint.sh routes `docker run <image> cog-ha-matter ...` (or `ha-matter`) to /app/cog-ha-matter, defaulting --sensing-url to http://127.0.0.1:3000 so a docker-compose deployment works out of the box. The default entrypoint (no first arg) still launches sensing-server unchanged. 3. Workflow path filter now also fires on changes to v2/crates/wifi-densepose-bfld/** and v2/crates/cog-ha-matter/** so future iteration on those crates rebuilds the image. DOCKERHUB_TOKEN rotated separately (was expired since 2026-05-13, which is why the last 5 workflow runs failed at the Docker Hub login step and `latest` on Docker Hub has stayed amd64-only despite #631 being merged). With this commit + rotated token, the next CI run should land a multi-arch `:latest` with HA-DISCO + cog-ha-matter + BFLD support. Reproduced kutayozdur's pull failure on ruv-mac-mini (Apple Silicon, Darwin arm64) via Tailscale before fixing. Refs #794, #631, ADR-115, ADR-116, ADR-118. Co-Authored-By: claude-flow <ruv@ruv.net>
48 lines
1.5 KiB
Bash
Executable File
48 lines
1.5 KiB
Bash
Executable File
#!/bin/sh
|
|
# Docker entrypoint for WiFi-DensePose sensing server.
|
|
#
|
|
# Supports two usage patterns:
|
|
#
|
|
# 1. No arguments — use defaults from environment:
|
|
# docker run -e CSI_SOURCE=esp32 ruvnet/wifi-densepose:latest
|
|
#
|
|
# 2. Pass CLI flags directly:
|
|
# docker run ruvnet/wifi-densepose:latest --source esp32 --tick-ms 500
|
|
# docker run ruvnet/wifi-densepose:latest --model /app/models/my.rvf
|
|
#
|
|
# Environment variables:
|
|
# CSI_SOURCE — data source: auto (default), esp32, wifi, simulated
|
|
# MODELS_DIR — directory to scan for .rvf model files (default: data/models)
|
|
set -e
|
|
|
|
# Route to cog-ha-matter (ADR-116) when invoked as:
|
|
# docker run <image> cog-ha-matter [--flags]
|
|
# or via the short alias `ha-matter`. Strips the keyword and execs the
|
|
# Home Assistant + Matter cog binary, defaulting --sensing-url to the
|
|
# co-located sensing-server endpoint so docker-compose deployments work
|
|
# out of the box.
|
|
case "${1:-}" in
|
|
cog-ha-matter|ha-matter)
|
|
shift
|
|
exec /app/cog-ha-matter \
|
|
--sensing-url "${SENSING_URL:-http://127.0.0.1:3000}" \
|
|
"$@"
|
|
;;
|
|
esac
|
|
|
|
# If the first argument looks like a flag (starts with -), prepend the
|
|
# server binary so users can just pass flags:
|
|
# docker run <image> --source esp32 --tick-ms 500
|
|
if [ "${1#-}" != "$1" ] || [ -z "$1" ]; then
|
|
set -- /app/sensing-server \
|
|
--source "${CSI_SOURCE:-auto}" \
|
|
--tick-ms 100 \
|
|
--ui-path /app/ui \
|
|
--http-port 3000 \
|
|
--ws-port 3001 \
|
|
--bind-addr 0.0.0.0 \
|
|
"$@"
|
|
fi
|
|
|
|
exec "$@"
|