diff options
| author | Artyom V. Poptsov <poptsov.artyom@gmail.com> | 2016-12-13 23:50:57 +0300 |
|---|---|---|
| committer | Artyom V. Poptsov <poptsov.artyom@gmail.com> | 2016-12-13 23:50:57 +0300 |
| commit | 3687c3c69da9394c795c6bda3ae3f9a3421315a5 (patch) | |
| tree | 03684f9bc644238c035c6042e3a5ee560d398766 | |
| parent | shell.scm: New module (diff) | |
| download | guile-ssh-3687c3c69da9394c795c6bda3ae3f9a3421315a5.tar.gz | |
shell.scm (command-available?): New procedure
* modules/ssh/shell.scm (command-available?): New procedure.
* modules/ssh/dist/node.scm (node-server-running?): Use it.
| -rw-r--r-- | modules/ssh/dist/node.scm | 4 | ||||
| -rw-r--r-- | modules/ssh/shell.scm | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/modules/ssh/dist/node.scm b/modules/ssh/dist/node.scm index 2091aa1..e594904 100644 --- a/modules/ssh/dist/node.scm +++ b/modules/ssh/dist/node.scm @@ -262,9 +262,7 @@ result, a number of the evaluation, a module name and a language name. Throw listens on an expected port, return #f otherwise." (define (pgrep-available?) "Check if 'pgrep' from procps is available on the node." - (receive (result rc) - (which (node-session node) "pgrep") - (zero? rc))) + (command-available? (node-session node) "pgrep")) (define (guile-up-and-running?) (let ((rp (tunnel-open-forward-channel (node-tunnel node)))) (and (channel-open? rp) diff --git a/modules/ssh/shell.scm b/modules/ssh/shell.scm index 2b108ea..c36303d 100644 --- a/modules/ssh/shell.scm +++ b/modules/ssh/shell.scm @@ -39,7 +39,7 @@ #:use-module (ice-9 rdelim) #:use-module (ssh channel) #:use-module (ssh popen) - #:export (rexec which pgrep fallback-pgrep)) + #:export (rexec which pgrep fallback-pgrep command-available?)) ;;; @@ -105,4 +105,10 @@ Return two values: a check result and a return code." "exit 1;" "' | bash")))) +(define (command-available? session command) + "check if COMMAND is available on a remote side." + (receive (result rc) + (which session command) + (zero? rc))) + ;;; shell.scm ends here. |
