qm monitor requires a TTY to emit its prompt; the pipe-based approach missed prompt detection on some hosts. Replace with pty.Start, refactor readUntilMarker to scan byte-by-byte with deadline goroutine, and add parseQMResponse to strip command echo and \r artifacts. Add unit tests for the new reader and parser functions.
18 lines
301 B
Nix
18 lines
301 B
Nix
{
|
|
lib,
|
|
buildGoModule,
|
|
...
|
|
}:
|
|
|
|
buildGoModule rec {
|
|
pname = "pve-local-exporter";
|
|
version = "0.1.0";
|
|
src = ./src;
|
|
vendorHash = "sha256-MLB7y7shnOhxW8K2R6+d9E63wGEhlErnv+1MYOJO3Hw=";
|
|
ldflags = [
|
|
"-X=main.version=${version}"
|
|
];
|
|
env.CGO_ENABLED = 0;
|
|
meta.mainProgram = "pve_local_exporter";
|
|
}
|