3b2146bc7a
The agent now detects its own primary non-loopback IP (UDP-socket trick, no packets sent) and sends it in the metadata bag; bumps AGENT_VERSION 1.0.0->1.1.0 and re-detects on SIGHUP. The server persists it on HostAgentRegistration.host_ip and mirrors it into Host.address ONLY when that field is blank — an admin-typed address is never overwritten. The reported IP shows in the settings table so admins can see drift regardless. - agent.py: detect_primary_ip(); host_ip in collect_metadata(); refresh on reload - routes.py: pure pick_host_address() helper; ingest persists host_ip + mirrors - models.py + migration host_agent_002_host_ip: new String(45) column - settings_list.html: Reported IP column - plugin.yaml: 1.0.0 -> 1.1.0 - tests: pick_host_address (fill-when-blank / never-clobber / no-op), detect_primary_ip (never raises, non-loopback), metadata carries host_ip Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
20 lines
546 B
YAML
20 lines
546 B
YAML
# plugins/host_agent/plugin.yaml
|
|
name: host_agent
|
|
version: "1.1.0"
|
|
description: "Remote Linux host resource monitoring via a lightweight Python push agent (CPU, memory, storage, load, uptime)"
|
|
author: "Steward"
|
|
license: "MIT"
|
|
min_app_version: "0.1.0"
|
|
repository_url: "https://git.fabledsword.com/bvandeusen/Steward-plugins"
|
|
homepage: "https://git.fabledsword.com/bvandeusen/Steward-plugins/src/branch/main/host_agent"
|
|
tags:
|
|
- host
|
|
- monitoring
|
|
- cpu
|
|
- memory
|
|
- storage
|
|
|
|
config:
|
|
stale_after_seconds: 180
|
|
default_interval_seconds: 30
|