Add integration tests based on VM

This commit is contained in:
2026-10-26 22:34:00 +02:00
parent f4a6540df9
commit 7d0f006601
22 changed files with 3826 additions and 69 deletions
+15 -13
View File
@@ -97,22 +97,24 @@ The host cannot run this build directly because its musl target is absent.
The digest-pinned official Rust 1.97.1 Alpine builder command in
[TESTING.md](TESTING.md) built the library test harness on 2026-10-23. `file`
identified a static PIE and `readelf -l` showed no interpreter; the ignored
readiness selector then passed 1/1 in the pinned Alpine runtime using a
read-only bind of the nonsecret binary. The selected-daemon M8.4 Testcontainers
smoke later copied the current binary into a fresh server container and passed
the test-only Create/Commit/first delivery/fixture Apply sequence with real
runtime observation. M8.5 traffic and remaining lifecycle scenarios remain
pending. The readiness wrapper
invokes the harness as
readiness selector passed 1/1 in the pinned Alpine runtime using a read-only
bind of the nonsecret binary. The selected-daemon M8.4 Testcontainers smoke
copied the current binary into a fresh server container and passed the
test-only Create/Commit/first delivery/fixture Apply sequence with real runtime
observation. M8.5 and M8.7 subsequently completed and M8 was accepted for the
documented IPv4 scope. The current integrated host gates and three fresh
selected-daemon lifecycle runs are recorded in
[evidence/milestone-8.md](evidence/milestone-8.md). The runs covered IPv4
traffic, deletion, restore, import/reissue and mandatory-backup failure. The
fixture Apply callback is not a systemd job. IPv6 capability/traffic and real
systemd/D-Bus remain unverified. The readiness wrapper invokes the harness as
`PATH --ignored --exact container_driver::alpine_readiness --test-threads=1`.
Cargo printed the executable under
`/tmp/wga-m8-build-target/x86_64-unknown-linux-musl/debug/deps/wireguard_admin-<hash>`
for the builder command. Discover the current hash from each build; the driver
must be recopied after code changes. A target name or successful compilation
alone is not Alpine runtime evidence. Shell-tool readiness, Rust harness
readiness and the M8.4 Application smoke passed on the selected daemon. No
client tunnel traffic or systemd job has been tested. Musl readiness is a
milestone 8 prerequisite, not a milestone 1 acceptance gate.
for the builder command. Discover the current hash from each build; rebuild the
driver after relevant code changes. A target name or successful compilation
alone is not Alpine runtime evidence. Musl readiness is an M8 fixture build
prerequisite; it is not a milestone 1 acceptance gate.
## Observed preparation state