Brad Fitzpatrick a4f623ad4b tstest/build-macos-base-vm: cache IPSW in ~/.cache with freshness checks
The IPSW restore image (~15GB) is now cached in
~/.cache/tailscale/vmtest/macos-ipsw/ and only re-downloaded when
Apple publishes a new version. Freshness is checked via HTTP ETag
headers. At most one IPSW is kept in the cache directory.

The Go program now handles the download itself (with progress
reporting) rather than delegating to the Swift helper, which lets
us do proper HTTP conditional requests. The Swift helper is split
into two modes: "fetch-ipsw-url" (queries VZ framework for the
latest URL) and "install" (installs from a local IPSW file).
2026-04-10 09:02:23 -07:00
..