Subject: [cuirass] test suite failures ()

From: Maxim Cournoyer <[email-masked]>
Date: Fri, 26 Jan 2024 23:40:27 -0500

Hi,

Running 'make check' in the environment described in Cuirass' README
file, from the commit 7bcd3d079f0ec45ac50f0dbc14eb4ec68c6a6b53 (or the
latest tagged release):

--8<---------------cut here---------------start------------->8---
guix shell -CPNW --expose=/var/log/guix/drvs \
    --expose=/var/run/dbus --expose=/run/avahi-daemon \
    --expose=/etc/ssl/certs

[env] make check
--8<---------------cut here---------------end--------------->8---

produces the result:

--8<---------------cut here---------------start------------->8---
[...]
FAIL: tests/remote.scm - build done
FAIL: tests/remote.scm - build timeout
FAIL: tests/remote.scm - worker restart
PASS: tests/remote.scm - clean-up
PASS: tests/utils.scm - resource pool, no contention
PASS: tests/utils.scm - resource pool, contention
PASS: tests/utils.scm - resource pool, exception thrown
============================================================================
Testsuite summary for Cuirass UNKNOWN
============================================================================
# TOTAL: 135
# PASS:  132
# SKIP:  0
# XFAIL: 0
# FAIL:  3
# XPASS: 0
# ERROR: 0
--8<---------------cut here---------------end--------------->8---

The test-suite.log file contains:

--8<---------------cut here---------------start------------->8---
=======================================
   Cuirass UNKNOWN: ./test-suite.log
=======================================

# TOTAL: 135
# PASS:  132
# SKIP:  0
# XFAIL: 0
# FAIL:  3
# XPASS: 0
# ERROR: 0

.. contents:: :depth: 2

FAIL: tests/remote
==================

test-name: db-init
location: /home/maxim/src/cuirass/tests/remote.scm:153
source:
+ (test-assert
+   "db-init"
+   (begin (test-init-db!) #t))
actual-value: #t
result: PASS

test-name: fill-db
location: /home/maxim/src/cuirass/tests/remote.scm:161
source:
+ (test-assert
+   "fill-db"
+   (let ((spec (specification (name "guix") (build 'hello)))
+         (checkouts
+           (list (checkout->channel-instance
+                   "dir1"
+                   #:name
+                   'guix
+                   #:url
+                   "url1"
+                   #:commit
+                   "fakesha1"))))
+     (db-add-or-update-specification spec)
+     (db-add-evaluation
+       "guix"
+       checkouts
+       #:timestamp
+       1501347493)
+     (db-add-build
+       (make-build #:drv (force drv) #:output "fake-1"))))
warning: failed to load '(guix platforms avr)':
In procedure abi-check: #<record-type <platform>>: record ABI mismatch; recompilation needed
actual-value: 1
result: PASS

test-name: remote-server
location: /home/maxim/src/cuirass/tests/remote.scm:178
source:
+ (test-assert
+   "remote-server"
+   (begin (start-server) #t))
actual-value: #t
result: PASS

test-name: remote-worker
location: /home/maxim/src/cuirass/tests/remote.scm:183
source:
+ (test-assert
+   "remote-worker"
+   (begin (start-worker) #t))
actual-value: #t
result: PASS

test-name: build done
location: /home/maxim/src/cuirass/tests/remote.scm:188
source:
+ (test-assert
+   "build done"
+   (retry (lambda ()
+            (eq? (build-current-status (db-get-build (force drv)))
+                 (build-status succeeded)))
+          #:times
+          10
+          #:delay
+          1))
increased maximum number of open files from 1024 to 2048
listening for build logs on port 5556
deleting old build logs from 'tests/cache'...
selected 0 build logs to remove
WARNING: (cuirass scripts remote-server): imported module (fibers) overrides core binding `sleep'
starting fetch worker with up to 8 concurrent downloads
periodic update: 0 resumable, 0 failed builds
creating 1 worker for build server at 127.0.0.1:5555
starting 1 workers (parallelism: 4 cores) for server at 127.0.0.1
unused GC roots older than 432000s will be deleted every 86400s
deleting old GC roots from '/var/guix/gcroots/profiles/per-user/maxim/cuirass/worker'...
selected 0 GC roots to remove
WARNING: (cuirass base): imported module (fibers) overrides core binding `sleep'
WARNING: (cuirass scripts remote-worker): imported module (fibers) overrides core binding `sleep'
worker 2DwmlYqW (PID 621) connected to tcp://127.0.0.1:5555
server publish URL: http://127.0.0.1:5557; server log port: 5556
warning: low disk space, doing nothing
2DwmlYqW: ping tcp://127.0.0.1:5555.
debug: worker 2DwmlYqW is up and running
debug: worker 2DwmlYqW is up and running
2024-01-27 04:38:15.767 UTC [632] WARNING:  no usable system locales were found
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
actual-value: #f
result: FAIL

test-name: build timeout
location: /home/maxim/src/cuirass/tests/remote.scm:196
source:
+ (test-assert
+   "build timeout"
+   (begin
+     (db-add-build
+       (make-build
+         #:drv
+         (force drv-with-timeout)
+         #:output
+         "fake-2"
+         #:timeout
+         1))
+     (retry (lambda ()
+              (eq? (build-current-status
+                     (db-get-build (force drv-with-timeout)))
+                   (build-status failed)))
+            #:times
+            10
+            #:delay
+            1)))
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
actual-value: #f
result: FAIL

test-name: worker restart
location: /home/maxim/src/cuirass/tests/remote.scm:209
source:
+ (test-assert
+   "worker restart"
+   (begin
+     (stop-worker)
+     (start-worker)
+     (db-update-build-status!
+       (force drv)
+       (build-status scheduled))
+     (retry (lambda ()
+              (eq? (build-current-status (db-get-build (force drv)))
+                   (build-status succeeded)))
+            #:times
+            10
+            #:delay
+            1)))
terminating worker sub-process 634
creating 1 worker for build server at 127.0.0.1:5555
starting 1 workers (parallelism: 4 cores) for server at 127.0.0.1
unused GC roots older than 432000s will be deleted every 86400s
deleting old GC roots from '/var/guix/gcroots/profiles/per-user/maxim/cuirass/worker'...
selected 0 GC roots to remove
WARNING: (cuirass base): imported module (fibers) overrides core binding `sleep'
WARNING: (cuirass scripts remote-worker): imported module (fibers) overrides core binding `sleep'
worker jWnNYJ44 (PID 758) connected to tcp://127.0.0.1:5555
server publish URL: http://127.0.0.1:5557; server log port: 5556
warning: low disk space, doing nothing
jWnNYJ44: ping tcp://127.0.0.1:5555.
debug: worker jWnNYJ44 is up and running
debug: worker jWnNYJ44 is up and running
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
warning: low disk space, doing nothing
actual-value: #f
result: FAIL

test-name: clean-up
location: /home/maxim/src/cuirass/tests/remote.scm:221
source:
+ (test-assert
+   "clean-up"
+   (begin (stop-worker) (stop-server)))
terminating worker sub-process 766
actual-value: (620 . 256)
result: PASS
--8<---------------cut here---------------end--------------->8---

-- 
Thanks,
Maxim