An openHop Repeater plugin (wheel, id community.influxdb) that pushes the repeater's data to a remote InfluxDB v1, v2 or v3 for Grafana: - metrics: /api/stats and mesh analytics endpoints, via a collector vendored from openhop-prometheus-plugin (MIT) - packets: live /ws/packets stream with gap backfill from /api/bulk_packets - logs: /api/logs_stream SSE with Last-Event-ID resume - snapshots: adverts/neighbours, GPS and numeric status endpoints The writer batches and gzips line protocol, retries with backoff and spools to disk while InfluxDB is unavailable. On InfluxDB 1.x it creates the database if it is missing. Includes a Grafana dashboard (InfluxQL), a dev stack (InfluxDB 2 + 1.x + Grafana), a fake Repeater for local testing, tests and CI. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
14 lines
416 B
Bash
Executable File
14 lines
416 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
# Build the openhop-influxdb-plugin wheel into dist/.
|
|
cd "$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd -P)"
|
|
PYTHON=".venv/bin/python"
|
|
[[ -x "$PYTHON" ]] || PYTHON="python3"
|
|
"$PYTHON" -m build --version >/dev/null 2>&1 || {
|
|
echo "Install the 'build' module first: $PYTHON -m pip install build" >&2
|
|
exit 1
|
|
}
|
|
rm -rf dist build
|
|
"$PYTHON" -m build --wheel
|
|
ls -1 dist/*.whl
|