I think I just found the smoking gun, so to speak.

In the reproducible builds log, I spotted this:

=== RUN   TestDNSProtocol
    dns_test.go:490: "localhost" doesn't resolve to ::1.
--- SKIP: TestDNSProtocol (0.00s)

This is due to this check in TestDNSProtocol:
    _, err := net.ResolveIPAddr("ip6", "localhost")
    if err != nil {
        t.Skip("\"localhost\" doesn't resolve to ::1.")
    }

The failure of "localhost" resolving to ::1 (as well as 127.0.0.1) suggests that the reproducible builds environment does not conform to a typical Debian environment (where localhost resolves to both 127.0.0.1 _and_ ::1), and will cause the GRPC tests to fail, since the upstream developer sets "IPProtocolFallback: false", and blackbox_exporter's resolver defaults to ip6[1].

I will prepare a patch to set "IPProtocolFallback: true" in the GRPC tests, as it is in all other tests in the repo (and as per the documented runtime config defaults).

[1]: https://github.com/prometheus/blackbox_exporter/issues/969#issuecomment-1370452161

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to