diff options
author | Vivien <vivien@pruneau.lan> | 2021-10-29 17:53:22 +0200 |
---|---|---|
committer | Vivien <vivien@pruneau.lan> | 2021-10-29 17:53:22 +0200 |
commit | dccbcbcf21c95d5a0df4c1e42d2658087967f207 (patch) | |
tree | b91a011c8f8df3e4738d592d749362a049aafb57 /vkraus | |
parent | e1e11cd2d2f8337b4c06866e89f39c07e575af15 (diff) |
SSH key synthesis: do not generate any key if an error happens.
Diffstat (limited to 'vkraus')
-rw-r--r-- | vkraus/services/guix-wot.scm | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/vkraus/services/guix-wot.scm b/vkraus/services/guix-wot.scm index 34f158b..1bb15f1 100644 --- a/vkraus/services/guix-wot.scm +++ b/vkraus/services/guix-wot.scm @@ -67,9 +67,14 @@ ((user . fingerprint) `(,user ,(let ((port (mkstemp "/tmp/user-key-file-XXXXXXXX"))) - (invoke (run-with-store (open-connection) (package-file gnupg "/bin/gpg")) - "-o" (port-filename port) - "--export-ssh-key" fingerprint) + (with-exception-handler + (lambda (exn) + (format (current-error-port) "Warning: no SSH key exported for ~a: ~a.\n" user exn)) + (lambda () + (invoke (run-with-store (open-connection) (package-file gnupg "/bin/gpg")) + "-o" (port-filename port) + "--export-ssh-key" fingerprint)) + #:unwind? #t) (let ((interned (plain-file (format #f "user-key-file-~a" fingerprint) (get-string-all port)))) |