3 ms·
> ssh does have some basic differentiation: "ssh exits with the exit status of the remote command or with 255 if an error occurred." Although, of course, 255 mi
by dozzie 10y ago
> ssh does have some basic differentiation: "ssh exits with the exit status of the remote command or with 255 if an error occurred." Although, of course, 255 might be returned by a remote command (not sure how likely that is), so it's still ambiguous.
If one uses SSH for running such scripts, then it is not unlikely that the
script itself would have another call to `ssh' to an even-more-remote machine.
And then there is the case of not expecting that a command would ever exit
with 255 code. My trust to a system would be quite damaged if I happened to
run into such a bug that a proper remote error would be mistaken for a network
error. How can I, as the script writer, be sure that I never run into this
situation?
- schizoidboy 10y agoI agree the ambiguous return code is a major limitation of SSH. I think I'll just avoid any retry logic and treat every failure the same: fail immediately and let the user to decide how to retry. Since posixcube does most of its execution over a single SSH connection (packaging all commands/cubes into a cube_exec.sh which is executed remotely), I think the immediate need for automatic retry on failing to connect over SSH isn't large.