29 releases

Uses new Rust 2021

new 0.9.1 May 14, 2022
0.9.0-rc.4 Mar 28, 2022
0.8.1 Jul 20, 2021
0.8.0 Dec 25, 2020
0.6.2 Jun 4, 2020

#115 in Network programming

Download history 370/week @ 2022-01-24 510/week @ 2022-01-31 208/week @ 2022-02-07 195/week @ 2022-02-14 305/week @ 2022-02-21 140/week @ 2022-02-28 229/week @ 2022-03-07 171/week @ 2022-03-14 309/week @ 2022-03-21 318/week @ 2022-03-28 340/week @ 2022-04-04 347/week @ 2022-04-11 310/week @ 2022-04-18 342/week @ 2022-04-25 480/week @ 2022-05-02 265/week @ 2022-05-09

1,405 downloads per month
Used in 6 crates (5 directly)

MIT/Apache

100KB
1.5K SLoC

Crates.io Documentation Codecov

Scriptable SSH through OpenSSH.

This crate wraps the OpenSSH remote login client (ssh on most machines), and provides a convenient mechanism for running commands on remote hosts. Since all commands are executed through the ssh command, all your existing configuration (e.g., in .ssh/config) should continue to work as expected.

The library's API is modeled closely after that of [std::process::Command], since ssh also attempts to make the remote process seem as much as possible like a local command.

License

Licensed under either of

at your option.

Contribution

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

Run integration tests

Requires docker and cargo-hack.

Check getting Docker guide on how to install docker, and use cargo install cargo-hack to install cargo-hack.

./run_ci_tests.sh

It will create a container which runs sshd, setup ssh-agent, and environment variables that are required to run the integration tests.

It will also test different combination of feature flags to ensure they all compile without error.

Build documentation

Requires nightly cargo.

To install nightly cargo, run rustup toolchain install nightly.

./build_doc.sh

Dependencies

~3–9.5MB
~154K SLoC