Skip to content

MaterializeInc/openssh

 
 

Repository files navigation

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

About

Scriptable SSH through OpenSSH in Rust

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 98.1%
  • Shell 1.9%