/harbinger

Abstract transport to connect to remote servers with performance in mind

Primary LanguagePythonApache License 2.0Apache-2.0

Harbinger

Abstract transport to connect to remote servers with performance in mind

docs/source/images/logo_256.png

Installation

sudo apt-get install make
python setup.py install

Examples

Install the dependencies.

pip install .[ssh2,paramiko]

Run one of the examples in the examples folder.

env PYTHONPATH=$PYTHONPATH:$(pwd) examples/telnet_ls_shell.py
Configuring Telnet connection
Hostname: localhost
Port: 23
Username: user
Password:
Creating Telnet connection object
Connecting
Sending 'ls'
Receiving output
bin   dev  home  lib64  mnt  proc  run   srv  tmp  var
boot  etc  lib   media  opt  root  sbin  sys  usr
Disconnecting
Done

Tests

Install tests requirements.

sudo apt-get install make
pip install -r requirements/dev.txt

Run Nose and Flake 8.

nosetests
flake8 *.py harbinger docs

If you are running Python 3.6+, install and execute Black.

pip install black
black --exclude harbinger/execeptions.py --diff --check -l 79 *.py harbinger docs

Documentation

The documentation is available on ReadTheDocs: https://harbinger.readthedocs.io/en/latest/

Building the documentation

Install Sphinx requirements.

sudo apt-get install make
pip install sphinx

Run Sphinx.

make -C docs html

The resulting HTML pages are available in docs/build/html.