“make check” requires network

  • Open
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Simon Tournier
Owner
unassigned
Submitted by
Simon Tournier
Severity
normal
S
S
Simon Tournier wrote on 29 Nov 2023 16:36
“make check” requires network
(address . bug-guix@gnu.org)
87plzsshao.fsf@gmail.com
Hi,

Running ’make check’ without network leads to errors, for instance.

Toggle snippet (37 lines)
$ ping ci.guix.gnu.org
ping: ci.guix.gnu.org: Name or service not known

$ make check TESTS="tests/derivations.scm"
make check-recursive
make[1]: Entering directory '/home/simon/src/guix/guix'
Making check in po/guix
make[2]: Entering directory '/home/simon/src/guix/guix/po/guix'
make[2]: Nothing to be done for 'check'.
make[2]: Leaving directory '/home/simon/src/guix/guix/po/guix'
Making check in po/packages
make[2]: Entering directory '/home/simon/src/guix/guix/po/packages'
make[2]: Nothing to be done for 'check'.
make[2]: Leaving directory '/home/simon/src/guix/guix/po/packages'
make[2]: Entering directory '/home/simon/src/guix/guix'
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
Compiling Scheme modules...
make check-TESTS check-local
make[3]: Entering directory '/home/simon/src/guix/guix'
make[4]: Entering directory '/home/simon/src/guix/guix'
make[4]: *** [Makefile:6383: tests/derivations.log] Error 1
make[4]: Leaving directory '/home/simon/src/guix/guix'
make[3]: *** [Makefile:6365: check-TESTS] Error 2
make[3]: Leaving directory '/home/simon/src/guix/guix'
make[2]: *** [Makefile:6613: check-am] Error 2
make[2]: Leaving directory '/home/simon/src/guix/guix'
make[1]: *** [Makefile:6142: check-recursive] Error 1
make[1]: Leaving directory '/home/simon/src/guix/guix'
make: *** [Makefile:6615: check] Error 2

The log reads,

Toggle snippet (71 lines)
$ cat tests/derivations.log
substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
substitute: guix substitute: warning: authentication and authorization of substitutes disabled!
building path(s) `/home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash'

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://alpha.gnu.org/gnu/guix/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From http://flashner.co.il/guix/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From http://lilypond.org/janneke/guix/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://bordeaux.guix.gnu.org/file/bash/sha256/0rjaxyzjdllfkf1abczvgaf3cdcc7mmahyvdbkjmjzhgz92pv23g...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://ci.guix.gnu.org/file/bash/sha256/0rjaxyzjdllfkf1abczvgaf3cdcc7mmahyvdbkjmjzhgz92pv23g...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://tarballs.nixos.org/sha256/0rjaxyzjdllfkf1abczvgaf3cdcc7mmahyvdbkjmjzhgz92pv23g...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://archive.softwareheritage.org/api/1/content/sha256:6f887d45fa0f7e59e55c6d7ba86a3d8c35369c7afbb3a5829b8ed226bfef4a66/raw/...
In procedure getaddrinfo: Name or service not known

Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
From https://web.archive.org/web/20231129162840/https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e...
In procedure getaddrinfo: Name or service not known
Trying to use Disarchive to assemble /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash...
In procedure getaddrinfo: Name or service not known
In procedure getaddrinfo: Name or service not known
could not find its Disarchive specification
failed to download "/home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash" from ("https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e" "https://alpha.gnu.org/gnu/guix/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e" "http://flashner.co.il/guix/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e" "http://lilypond.org/janneke/guix/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e")
builder for `/home/simon/src/guix/guix/test-tmp/store/xz62gfbjkib3jys0b96ffhq05bscp9vs-bash.drv' failed to produce output path `/home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash'
Backtrace:
9 (primitive-load-path "tests/derivations.scm")
In ice-9/eval.scm:
626:19 8 (_ #<directory (test-derivations) 7f62ddcd2d20>)
293:34 7 (_ #(#(#<directory (test-derivations) 7f62ddcd2d20>) "bash"))
In ice-9/boot-9.scm:
1752:10 6 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
In guix/store.scm:
659:37 5 (thunk)
2168:25 4 (run-with-store #<store-connection 256.99 7f62d3b65c80> #<procedure 7f62bf2e54a0 at guix/tests.scm:…> …)
In guix/tests.scm:
123:14 3 (_ _)
In guix/store.scm:
2040:38 2 (_ #<store-connection 256.99 7f62d3b478c0>)
1417:15 1 (_ #<store-connection 256.99 7f62d3b478c0> _ _)
In ice-9/boot-9.scm:
1685:16 0 (raise-exception _ #:continuable? _)

ice-9/boot-9.scm:1685:16: In procedure raise-exception:
ERROR:
1. &store-protocol-error:
message: "build of `/home/simon/src/guix/guix/test-tmp/store/xz62gfbjkib3jys0b96ffhq05bscp9vs-bash.drv' failed"
status: 1

That’s annoying because when working offline, I need to first run – at
least once – the test suite. Well, it could be nice to either have:

1. all the requirements provided by “guix shell -D guix”,

or

2. some etc/manifest-for-tests.scm which would populate the store.


Cheers,
simon
L
L
Ludovic Courtès wrote on 11 Dec 2023 22:42
(name . Simon Tournier)(address . zimon.toutoune@gmail.com)(address . 67532@debbugs.gnu.org)
87sf482z7d.fsf@gnu.org
Hi,

Simon Tournier <zimon.toutoune@gmail.com> skribis:

Toggle quote (2 lines)
> Running ’make check’ without network leads to errors, for instance.

[...]

Toggle quote (9 lines)
> $ cat tests/derivations.log
> substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
> substitute: guix substitute: warning: authentication and authorization of substitutes disabled!
> building path(s) `/home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash'
>
> Starting download of /home/simon/src/guix/guix/test-tmp/store/qkg9bx9adcv98n9z40dvw68mip3vg1dg-bash
>>From https://git.savannah.gnu.org/cgit/guix.git/plain/gnu/packages/bootstrap/i686-linux/bash?id=44f07d1dc6806e97c4e9ee3e6be883cc59dc666e...
> In procedure getaddrinfo: Name or service not known

I had come to forget about that because for the ‘guix’ package
(obviously built in a network-less environment), we “pre-seed” the store
with the 4 or 5 files needed to run the test suite.

So I propose:
Toggle diff (20 lines)
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 0833b5d32c..0072e5d42d 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -76,13 +76,13 @@ Building from Git
hack on Guix:
@example
-guix shell -D guix -CPW
+guix shell -D guix -CPWN
@end example
or even, from within a Git worktree for Guix:
@example
-guix shell -CPW
+guix shell -CPWN
@end example
If @option{-C} (short for @option{--container}) is not supported on your
(And not going back to ‘--pure’ because as we know it depends too much
of the goodwill of the user’s shell.)

WDYT?

Ludo’.
S
S
Simon Tournier wrote on 19 Dec 2023 09:50
(name . Ludovic Courtès)(address . ludo@gnu.org)(address . 67532@debbugs.gnu.org)
87bkam60fm.fsf@gmail.com
Hi Ludo,

This bug report is independent with the recommendation for building
Guix. I consider this current behaviour as a bug: Network on,

guix shell <whatever-options> -D guix
./bootstrap
./configure

then network off,
make check

fails. I do not mind if the data (pre-seed the store) has to be
downloaded at “guix shell -D guix” step, or at ./bootstrap step or at
./configure step.

It would be better to have all the requirements downloaded with “guix
shell -D guix” though. Well, it was that my expectation just before
preparing my offline day. :-)


On Mon, 11 Dec 2023 at 22:42, Ludovic Courtès <ludo@gnu.org> wrote:

Toggle quote (14 lines)
> So I propose:
>
> diff --git a/doc/contributing.texi b/doc/contributing.texi
> index 0833b5d32c..0072e5d42d 100644
> --- a/doc/contributing.texi
> +++ b/doc/contributing.texi
> @@ -76,13 +76,13 @@ Building from Git
> hack on Guix:
>
> @example
> -guix shell -D guix -CPW
> +guix shell -D guix -CPWN
> @end example

Therefore, this is not a fix for this bug #67532, IMHO.

Maybe for bug#66537 (see below).


Toggle quote (3 lines)
> (And not going back to ‘--pure’ because as we know it depends too much
> of the goodwill of the user’s shell.)

Well, let discuss that as an answer of,

bug#66537: [PATCH] doc: Recommend building in ‘guix shell -CPW’.
Simon Tournier <zimon.toutoune@gmail.com>
Fri, 08 Dec 2023 16:50:09 +0100
id:87bkb08zim.fsf_-_@gmail.com

Cheers,
simon
?