GNU bug report logs -
#78717
New etc-profile-d-service-type test fails, breaking many other tests
Previous Next
Full log
Message #8 received at 78717 <at> debbugs.gnu.org (full text, mbox):
Hi 45mg,
> I noticed this when I ran the 'encrypted-home-os-key-file' test to test
> a new patch to <mapped-device> [1], and it failed due to the
> '/etc/profile.d is sourced' test failing. Eventually I figured out that
> it fails on the latest master as well, and the latest CI run confirms
> this:
>
> https://ci.guix.gnu.org/build/10936896/details
>
> Looking at the log file, you can see the failing test:
>
> https://ci.guix.gnu.org/build/10936896/log/raw
> --8<---------------cut here---------------start------------->8---
> ...
> Test begin:
> test-name: "/etc/profile.d is sourced"
> source-file: "/gnu/store/178h83msb53wf8v57zabi8s4q4ksfid8-encrypted-home-os-builder"
> source-line: 1
> source-form: (test-assert "/etc/profile.d is sourced" (zero? (marionette-eval (quote (system "\n. /etc/profile\nset -e -x\ntest -f /etc/profile.d/test_profile_d.sh\ntest \"$PROFILE_D_OK\" = yes")) marionette)))
> Test end:
> result-kind: fail
> actual-value: #f
> ...
> --8<---------------cut here---------------end--------------->8---
>
> Looking at some of the other failing tests, you can see that they fail
> in exactly the same way:
>
> encrypted-root-os
> https://ci.guix.gnu.org/build/10936887/details
> encrypted-home-os
> https://ci.guix.gnu.org/build/10936894/details
> jfs-root-os
> https://ci.guix.gnu.org/build/10936890/details
> btrfs-root-os
> https://ci.guix.gnu.org/build/10936905/details
>
> Before this, the last CI run that ran to completion was on commit
> 85b5c2c, which was before the etc/profile.d test was added. In total,
> there are 23 new failing tests from this CI run:
>
> https://ci.guix.gnu.org/eval/2062380?status=newly-failed
>
> The strange thing is, the etc/profile.d test passes if I run it normally
> as part of the basic tests, like this:
I don't think this is a strange thing at all. The basic test runs with
test-basic-os operating-system, this os has the
etc-profile-d-service-type. The other tests still use run-basic-test
that checks basic stuff, including /etc/profile.d sourcing, but use
different os definition, without the etc-profile-d-service-type.
So there needs to happen one of those two things:
1. The run-basic-test procedure has to be modified to not expect
/etc/profile.d always
2. The other tests have to use the os with etc-profile-d-service-type
services, ie. by concating the services from basic-test-os.
> --8<---------------cut here---------------start------------->8---
> guix shell -D guix --pure -- make check-system TESTS=basic
> --8<---------------cut here---------------end--------------->8---
>
>
> [1] https://yhetil.org/guix/87jz7rsu49.fsf <at> gnu.org/
Rutherther
This bug report was last modified 7 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.