Build from Source#

Build the Docker Image#

cd edge-ai-libraries/microservices/sensor-manager
make build            # uses REGISTRY and TAG from .env

To build the image directly:

docker build -f docker/Dockerfile -t intel/sensor-manager:latest .

Run Locally without Docker#

uv sync --frozen --extra dev
SENSOR_MANAGER_PORT=8090 uv run python -m src

USB discovery requires v4l2-ctl (the v4l-utils package), and your user must be able to open /dev/video* devices (member of the video group).

Run Tests and Linters#

make test       # unit tests
make coverage   # tests with coverage report in coverage/
make lint       # ruff check and format check

Update the dlstreamer.onvif Library#

The library is pinned to a DL Streamer commit in pyproject.toml ([tool.uv.sources] intel-dlstreamer). To update it, change rev to the new commit SHA, run uv lock, then run the tests and commit both pyproject.toml and uv.lock.