mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-19 10:33:29 +00:00
infra: surface the agent's Proxmox auto-register shortcut
On a PVE or PBS host, the agent mints its own API token and registers the node via RunAll (internal/hostagent/proxmox_setup.go + agent.go :1295–1340). That is the fastest path to a working Proxmox connection — no address paste, no credentials. Previous copy framed the agent purely as "host metrics you add on top," which hid the shortcut and steered Proxmox users into pasting credentials they did not need. Reframe the two sections: - "Or connect a remote platform API" — five tiles for when Pulse lives elsewhere from the target (PMG / VMware / TrueNAS have no host-side agent path, and remote Proxmox reaches the tile from a different box). - "Or install the agent on the host" — leads with "On a Proxmox host, this is the fastest path," then keeps the host-metrics pitch for bare-metal Linux / Unraid / FreeBSD / Docker / Kubernetes. Architecture pins extended to guard the Proxmox auto-register copy.
This commit is contained in:
parent
d39a935f86
commit
85b816c606
2 changed files with 15 additions and 9 deletions
|
|
@ -102,7 +102,7 @@ export const ConnectionEditor: Component<ConnectionEditorProps> = (props) => {
|
|||
<section class="space-y-3">
|
||||
<div class="flex items-center gap-3 text-xs font-semibold uppercase tracking-wide text-muted">
|
||||
<span class="h-px flex-1 bg-border" aria-hidden="true" />
|
||||
Or pick a platform to connect
|
||||
Or connect a remote platform API
|
||||
<span class="h-px flex-1 bg-border" aria-hidden="true" />
|
||||
</div>
|
||||
|
||||
|
|
@ -140,7 +140,7 @@ export const ConnectionEditor: Component<ConnectionEditorProps> = (props) => {
|
|||
<section class="space-y-3">
|
||||
<div class="flex items-center gap-3 text-xs font-semibold uppercase tracking-wide text-muted">
|
||||
<span class="h-px flex-1 bg-border" aria-hidden="true" />
|
||||
Or install a host-level agent
|
||||
Or install the agent on the host
|
||||
<span class="h-px flex-1 bg-border" aria-hidden="true" />
|
||||
</div>
|
||||
|
||||
|
|
@ -163,14 +163,15 @@ export const ConnectionEditor: Component<ConnectionEditorProps> = (props) => {
|
|||
</div>
|
||||
</div>
|
||||
<div class="text-xs text-muted">
|
||||
Reports CPU temperature, disk SMART, systemd services, and network metrics
|
||||
from the host itself. Auto-detects Docker, Kubernetes, and Proxmox on that
|
||||
machine.
|
||||
<span class="font-medium text-base-content">On a Proxmox host, this is the
|
||||
fastest path.</span> The agent creates the PVE / PBS API token itself and
|
||||
auto-registers the node — no address or credentials to paste above.
|
||||
</div>
|
||||
<div class="text-xs text-muted">
|
||||
Use it for bare-metal Linux / Unraid / FreeBSD, or install it on Proxmox /
|
||||
TrueNAS hosts <span class="font-medium">in addition to</span> a platform
|
||||
connection above for deeper per-host telemetry.
|
||||
It also reports CPU temperature, disk SMART, systemd services, and network
|
||||
metrics from the host, and auto-detects Docker and Kubernetes on that
|
||||
machine. Required for bare-metal Linux / Unraid / FreeBSD targets that have
|
||||
no platform API to connect.
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
|
|
|
|||
|
|
@ -81,7 +81,12 @@ describe('settings architecture guardrails', () => {
|
|||
expect(connectionEditorSource).toContain('const DEFAULT_PLATFORM_TYPES: ConnectionType[] =');
|
||||
expect(connectionEditorSource).not.toContain("'agent'] =");
|
||||
expect(connectionEditorSource).toContain('<AddressProbeStep');
|
||||
expect(connectionEditorSource).toContain('Or install a host-level agent');
|
||||
expect(connectionEditorSource).toContain('Or install the agent on the host');
|
||||
// Honest framing: the agent auto-registers PVE/PBS when installed on a
|
||||
// Proxmox node, so the card must surface that shortcut rather than
|
||||
// pretending the agent is only for host metrics.
|
||||
expect(connectionEditorSource).toContain('On a Proxmox host, this is the');
|
||||
expect(connectionEditorSource).toContain('auto-registers the node');
|
||||
// The agent install path is a first-class ledger-header action, not a
|
||||
// subtext offramp inside the editor — make sure it doesn't drift back.
|
||||
expect(connectionEditorSource).not.toContain('Install the Unified Agent on a host');
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue