Skip to content

RadSSH 1.0.6

Compare
Choose a tag to compare
@radssh radssh released this 23 Nov 18:31
· 107 commits to master since this release

Issues Fixed

  • #15 - Config option (stalled_job_buffer) to save off # most recent lines of output (per host). Initial Ctrl-C interrupt will output to console the recent output from the potentially stalled nodes, which may originally have occurred hundreds or thousands of lines above the current console position.
  • #16 - Misuse of catching AttributeError when calling plugin lookup() function. Now use hasattr() call to pre-screen, and if plugin lookup() call raises AttributeError, it gets logged as with any other exception.
  • #17 & #11 - Better detection of remote host "going away". Paramiko keepalive doesn't check for responses, so request packets just wind up getting queued. Implement a keepalive system that can detect lack of responses.

Enhancements

  • Better internal handling of byte data versus character data (Unicode). Initial Python3 port effort wound up breaking all handling of output that was not 7-bit clean ASCII. While there may still be gremlins lurking, this should make things a whole lot better for both Python2 and Python3. Override default of sys.stdout.encoding with config option character_encoding.
  • Include per-host connection status in radssh.log file.

Plugin Enhancements

  • New plugin: alias
    Permits local shell aliases to be used within remote clusters. Alias definitions may be sourced from ~/.bash_profile, ~/.bashrc or ~/.profile (sh), on a first-found basis. Also permits !! and !$ to be interpreted.
  • New plugin: tar
    Allows quick collection of logfile or config file directories, using *tar (or *tgz / *tbz) to invoke tar (and compress) on remote nodes with subsequent command line args as the files or directories to gather.
  • *tty Would report that it was skipping hosts, without actually skipping them.