Subject: [bug#28600] [PATCH] tests: install: Switch to modifying the gc-root-service-type.

From: Christopher Baines <[email-masked]>
Date: Mon, 25 Sep 2017 21:02:55 +0100

On Mon, 25 Sep 2017 20:58:10 +0100
Christopher Baines <[email-masked]> wrote:

> Rather than adding the service to the system.
> 
> The previous approach is causing the system tests to fail, as the os
> already contains a service of type gc-root-service-type, and the way
> that this service extends the system-service doesn't compose, causing
> an error if its added twice.
> 
>   ERROR: In procedure symlink: File exists
> 
> * gnu/tests/install.scm (operating-system-with-gc-roots): Modify the
> existing gc-root-service, rather than adding another.
> ---
>  gnu/tests/install.scm | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm
> index 49743860e..28dfc3b8b 100644
> --- a/gnu/tests/install.scm
> +++ b/gnu/tests/install.scm
> @@ -127,8 +127,9 @@
>    "Return a variant of OS where ROOTS are registered as GC roots."
>    (operating-system
>      (inherit os)
> -    (services (cons (service gc-root-service-type roots)
> -                    (operating-system-user-services os)))))
> +    (services
> +     (modify-services (operating-system-user-services os)
> +       (gc-root-service-type _ => roots)))))
>  
>  
>  (define MiB (expt 2 20))

Quite a few of the system tests seem to be failing, I got the
results below testing some version of Guix which I think roughly
equivalent to the master branch.

I think the above patch helps, but I'm not sure if it actually fixes
any of the failing tests, as I think there are other issues.

TOTAL: 27
PASS: /gnu/store/62pr6a9gpza57yx7qzk6mhr6d0l750wa-tailon-test
PASS: /gnu/store/r06chj5z1sjwf839qyd0sg1lni8na137-mpd-test
PASS: /gnu/store/p111z34c1in1h6g2gwqbncqlwnb65m6s-basic
PASS: /gnu/store/pixmmgv3ms5fam9h9x7lawq71jr6sx22-memcached-test
PASS: /gnu/store/4ns63ifvdd019m0pdgypx3xyvnhh7asw-elogind
PASS: /gnu/store/cck9b28c7nrjb6hnmb6b2f53dngz1zk0-dicod
PASS: /gnu/store/yxkbmsad9ji59wd8f2w4g7zby5vjf4cg-exim-test
PASS: /gnu/store/9a5i3y1mq51l352k8gksf18v43myihb0-opensmtpd-test
PASS: /gnu/store/9dvmrk9wjyki6ij4k7rg3wp0yi4miydh-prosody
PASS: /gnu/store/0p8mpifvqwrn7pcgs15pvd9v5akxadly-inetd-test
PASS: /gnu/store/h2xd8gdzjam94zbw1rapkcdpczg6nxa0-nfs
PASS: /gnu/store/y2xlfj2kqz5119ibz88v7np49zn4qq2s-rsync-test
PASS: /gnu/store/98yj0djybbahp7mmbhp9w8aq1700b98h-openssh
PASS: /gnu/store/s1sjx6kp3zdbbb79qj6mw2d4n1zy5fwa-dropbear
PASS: /gnu/store/jh45gkxlz40xcjbqr44fvkjcwabamrsm-libvirt-test
PASS: /gnu/store/4m3csmgrb6lm8825y8z1mbns1r5jvlbc-nginx-test
FAIL: /gnu/store/fz270kg3fsb79gmgrn4g3jhlvdncsy7p-nss-mdns
FAIL: /gnu/store/2brmg8qyhig1fg8f1dxcnz2ii9q2jm55-mcron
FAIL: /gnu/store/0mn5w20mgjcjlcl43dqs1mzp855bh7dd-halt
FAIL: /gnu/store/zbmp1x95h7skfw9ns3k21lx7vk5nqb53-iso-image-installer
FAIL: /gnu/store/mac0aa8r5711mivzhhar43a5dyg1in67-installed-os
FAIL: /gnu/store/gk4zc3g40lnm2ijps27hkwrrd1yvajkn-installed-extlinux-os
FAIL: /gnu/store/9653l9z5mqjpjs75b17h2k449s5lf689-btrfs-root-os
FAIL: /gnu/store/cnp72hfl9nd08m3zqb93vhr8b59bdng0-raid-root-os
FAIL: /gnu/store/3qqp3ps3s6hilw6zgriyvm3qpca8a0kv-encrypted-root-os
FAIL: /gnu/store/n2a8hvrppj5c34cgd8m41yz6zxj1yhk2-separate-store-os
FAIL: /gnu/store/2np47fqwi4vmhls0l69la6mbwayv1ygq-separate-home-os