tests: vnstat: Avoid call to 'getservbyname'.

This would break "make as-derivation" because /etc/services is
unavailable in the build environment:

  [ 38/ 80] loading...	 95.0% of 40 filesBacktrace:
  In guix/build/compile.scm:
      249:8 19 (compile-files "." "/gnu/store/s5nadqd6hkzivkxp33svwqslfn608ng5-guix-system-tests" ("gnu/tests/audio.scm" "gnu/tests/base.scm" "gnu/tests/ci.scm" "gnu/tests/cups.scm" "gnu/tests/d…" …) …)
  […]
  In unknown file:
	     0 (getserv "discard" "tcp")

  ERROR: In procedure getserv:
  In procedure getserv: no such service discard
  builder for `/gnu/store/…-guix-system-tests.drv' failed with exit code 1

* gnu/tests/vnstat.scm (run-vnstat-test): Hard-code 'guest-port' instead
of calling 'getservbyname'.
This commit is contained in:
Ludovic Courtès 2023-05-11 18:07:21 +02:00
parent f43c029041
commit d6f6b57766
No known key found for this signature in database
GPG key ID: 090B11993D9AEBB5

View file

@ -61,12 +61,9 @@ (define os
(define forwarded-port 9999)
(define vm
(let* ((inetd-service-name "discard")
(inetd-service-proto
(inetd-entry-protocol inetd-service-entry-config))
(guest-port
(servent:port (getservbyname inetd-service-name
inetd-service-proto))))
;; The 'discard' port is 9. Avoid using 'getservbyname' as that might
;; fail depending on what /etc/services has (if it's available).
(let ((guest-port 9))
(virtual-machine
(operating-system os)
(port-forwardings `((,forwarded-port . ,guest-port))))))