guix_mirror_bot pushed a commit to branch version-1.5.0
in repository guix.

commit efec531f5ec0105ae1d94517931f128758dbb3ee
Author: Rutherther <[email protected]>
AuthorDate: Mon Dec 22 18:56:23 2025 +0100

    tests: foreign: Add test restarting guix-daemon.
    
    * gnu/tests/foreign.scm (run-foreign-install-test): Restart the
    daemon, build and gc afterwards.
    
    Followup of 9a78e760762c1d93369e765bdce12388e1662ec6.
    
    Change-Id: Ia2304d6b9c83b5b8f410426ce00e078c2f004198
    Signed-off-by: Rutherther <[email protected]>
---
 gnu/tests/foreign.scm | 33 +++++++++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)

diff --git a/gnu/tests/foreign.scm b/gnu/tests/foreign.scm
index 0e8093d748..1d480f157d 100644
--- a/gnu/tests/foreign.scm
+++ b/gnu/tests/foreign.scm
@@ -266,6 +266,39 @@ of DEB-FILES with 'dpkg -i'."
 
           #$(guix-daemon-test-cases #~marionette)
 
+          ;; NOTE: There was a bug where the service couldn't be restarted,
+          ;; because the store would be captured as read-only when creating
+          ;; the private mount namespace.
+          ;; See <https://codeberg.org/guix/guix/issues/4744>.
+          ;; So we try restarting it here.
+          (test-equal "restart guix-daemon.service"
+            0
+            (marionette-eval '(system* "systemctl" "restart"
+                                       "guix-daemon.service")
+                             marionette))
+
+          (test-equal "guix build hello after guix-daemon.service restart"
+            0
+            (marionette-eval '(system* "guix" "build"
+                                       "hello" "--no-grafts"
+                                       "--check")
+                             marionette))
+
+          (test-equal "guix gc after guix-daemon.service"
+            0
+            (marionette-eval '(system* "guix" "gc")
+                             marionette))
+
+          ;; NOTE: Since the fix of the bug meant stopping gnu-store.mount
+          ;; during startup of guix-daemon service, check that it's started.
+          ;; Check only after some time, because the service might not be
+          ;; up yet right after the restart.
+          (test-equal "gnu-store.mount is active after guix-daemon restart"
+            0
+            (marionette-eval '(system* "systemctl" "is-active"
+                                       "gnu-store.mount")
+                             marionette))
+
           (test-assert "screenshot after"
             (marionette-control (string-append "screendump " #$output
                                                "/after-install.ppm")

Reply via email to