Crate spurs

Source
Expand description

spurs is a library for executing commands remotely over SSH. I created it in an effort to automate setup and experimentation on a cluster of machines.

spurs prioritizes ergonomics over performance. It is not a high-performance way of getting stuff done in a cluster.

spurs takes heavy inspiration from the python spur.py library, which is amazing. At some point, though, my scripts were so big that python was getting in my way, so I created spurs to allow me to build my cluster setup/experiments scripts/framework in rust, with much greater productivity and refactorability.

Macros§

cmd
A useful macro that allows creating commands with format strings and arguments.

Structs§

SshCommand
SshOutput
SshShell
Represents a connection via SSH to a particular source.
SshSpawnHandle
A handle for a spawned remote command.

Enums§

SshError
An error type representing things that could possibly go wrong when using an SshShell.

Traits§

Execute
A trait representing types that can run an SshCommand.