Skip to content

test(e2e): restore musl DNS probe coverage for guest prebuilt artifacts #3009

Description

@elezar

Description

The rootless Podman guest prebuilt-artifact E2E mode currently skips the musl DNS probe case in transparent_tcp because the test builds e2e/support/musl-dns-probe.c at runtime, but e2e/run.sh --tests-in-vm copies only compiled Rust test artifacts into the VM.

Context

PR #3004 moves the rootless Podman E2E tests into the Nix-managed Ubuntu 26.04 guest so dynamic fixtures and sandboxes share the same VM network context. That exposed a host-source assumption in tests/transparent_tcp.rs: rootless_podman_musl_getaddrinfo_uses_udp_policy_dns locates ../support/musl-dns-probe.c through CARGO_MANIFEST_DIR and invokes mise x -- zig cc at test runtime.

In guest prebuilt-artifact mode, the source tree and mise toolchain are intentionally not present in the VM. Embedding the C source in the Rust test would make the test pass, but that keeps runtime compilation inside the test and is not the preferred shape for this lane.

Definition of Done

  • The musl DNS probe is built or packaged as an explicit E2E artifact before the guest test run.
  • e2e/run.sh --tests-in-vm copies the probe artifact into the Nix guest when transparent_tcp is selected.
  • transparent_tcp uses the supplied probe artifact in guest prebuilt-artifact mode instead of compiling C source at runtime.
  • rootless_podman_musl_getaddrinfo_uses_udp_policy_dns is re-enabled for guest prebuilt-artifact runs.
  • The full Ubuntu 26.04 rootless Podman e2e_podman lane passes with the restored probe coverage.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions