[bug#75010,3/7] gnu: machine: ssh: Return monadic value from roll-back-managed-host.

Message ID 9d7e69af958b651dd463d93822c0b493e201387a.1734798943.git.herman@rimm.ee
State New
Headers
Series Roll back when deployment fails. |

Commit Message

Herman Rimm Dec. 21, 2024, 5:04 p.m. UTC
  * gnu/machine/ssh.scm (roll-back-managed-host): Use return.

Change-Id: Ibe7ddd5758173a6835d8796c9c5ae5ba306b3334
---
 gnu/machine/ssh.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)
  

Comments

Ludovic Courtès Dec. 30, 2024, 12:36 p.m. UTC | #1
Herman Rimm <herman@rimm.ee> skribis:

> * gnu/machine/ssh.scm (roll-back-managed-host): Use return.
>
> Change-Id: Ibe7ddd5758173a6835d8796c9c5ae5ba306b3334

[...]

> -    (_ (raise roll-back-failure))))
> +         (mwhen (eqv? 'error remote-result)
> +           (return (raise roll-back-failure))))))
> +    (_ (return (raise roll-back-failure)))))

Definitely.  :-)

(‘return’ could be omitted since it won’t return.)

Ludo’.
  

Patch

diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm
index 24c36a1936..c76b51c757 100644
--- a/gnu/machine/ssh.scm
+++ b/gnu/machine/ssh.scm
@@ -612,9 +612,9 @@  (define (roll-back-managed-host machine)
                          #:old-entries old-entries)))
        (mlet %store-monad
            ((remote-result (machine-remote-eval machine remote-exp)))
-         (when (eqv? 'error remote-result)
-           (raise roll-back-failure)))))
-    (_ (raise roll-back-failure))))
+         (mwhen (eqv? 'error remote-result)
+           (return (raise roll-back-failure))))))
+    (_ (return (raise roll-back-failure)))))
 
 
 ;;;