Pulse/scripts/installtests
rcourtman 9d4f6ae923 fix(install): stop the agent version warning firing on correct installs
The installer compares the agent binary it downloaded against the server that
served it, stripping a leading "v" so "v6.0.4" and "6.0.4" match. It did not
strip semver build metadata, so a server built from a working tree reporting
"6.2.0-rc.8+git.46.g98a638e00.dirty" never matched the "v6.2.0-rc.8" agent it
had just served, and the mismatch warning fired on every correct development
install.

This is the warning's whole job, so a false positive is expensive. It is the
only client-side signal that a stale agent was downloaded, and because it
always fired it read as background noise. That is exactly how a genuinely
stale v6.0.5 agent was installed on a live host earlier today: the warning
was there, above the install output, and looked like the one that always
appears.

Strip build metadata from both sides before comparing, keeping the prerelease
suffix because 6.2.0-rc.8 and 6.2.0 are genuinely different releases. This is
the same release-identity reduction the server applies when deciding whether a
local agent artifact is fresh enough to serve; the contracts now state that
one definition governs both ends rather than leaving each side to invent its
own.

Guarded by a test that pins both normalisation steps and exercises the
comparison across the cases that matter: the dev-server shape that used to
warn wrongly, the stale-download shape that must still warn, and a prerelease
against its release. Verified to fail when either strip is removed.
2026-08-06 15:50:47 +01:00
..
windowslifecycleserver Extract the transport-independent action lifecycle service 2026-07-10 11:06:55 +01:00
agent_state_dir_lifecycle_test.go Let --report-ip lead host identity and pass it through the installer 2026-07-22 00:49:43 +01:00
backfill_release_assets_test.go Add historical release asset backfill workflow 2026-04-22 17:25:58 +01:00
build_release_assets_test.go chore(ci): stop resurrecting the pulse-agent GHCR package 2026-08-06 10:48:05 +01:00
docker_entrypoint_test.go Refresh Pulse 6.1 RC1 mobile evidence 2026-07-13 19:41:41 +01:00
install_docker_sh_test.go Revert "Prepare v6.2.0-rc.9 release" 2026-08-05 22:18:52 +01:00
install_ps1_test.go Run the Windows installer TLS callback off a compiled type 2026-08-02 13:12:17 +01:00
install_sh_test.go fix(install): stop the agent version warning firing on correct installs 2026-08-06 15:50:47 +01:00
provider_msp_deploy_test.go Self-issue the MSP evaluation licence, and fix two things it exposed 2026-08-03 18:14:05 +01:00
pulse_auto_update_test.go Fix auto-update leaving service down after installer failure 2026-07-27 09:38:37 +01:00
release_ldflags_test.go Require signed unified agent release assets 2026-04-22 02:00:29 +01:00
root_install_sh_test.go fix(install): use absolute binary path in pct exec instructions 2026-08-06 12:08:13 +01:00
uninstall_sensor_proxy_test.go Prepare v6.0.0 release candidate 2026-06-04 14:07:14 +01:00
windows_agent_lifecycle.ps1 Extract the transport-independent action lifecycle service 2026-07-10 11:06:55 +01:00