issho 0.5.1
issho allows easy access to simple commands on a remote machine.
License: MIT license
Keywords: issho,paramiko,keyring,ssh,sftp,python,python-fire,prompt-toolkit,pysftp,sshed,sshtunnel

======
issho
======

.. image:: https://img.shields.io/badge/license-MIT-blue.svg
    :target: https://raw.githubusercontent.com/michaelbilow/issho/master/LICENSE
    :alt: License

.. image:: https://img.shields.io/travis/michaelbilow/issho.svg
    :target: https://travis-ci.org/michaelbilow/issho

.. image:: https://readthedocs.org/projects/issho/badge/?version=latest
    :target: https://issho.readthedocs.io/en/latest/?badge=latest
    :alt: Documentation Status

.. image:: https://img.shields.io/pypi/v/issho.svg
    :target: https://pypi.python.org/pypi/issho

.. image:: https://img.shields.io/conda/vn/conda-forge/issho.svg
    :target: https://anaconda.org/conda-forge/issho
    :alt: Conda Version

.. image:: https://img.shields.io/conda/pn/conda-forge/issho.svg
    :target: https://anaconda.org/conda-forge/issho
    :alt: Conda Platforms

.. image:: https://img.shields.io/badge/code%20style-black-000000.svg
    :target: https://github.com/python/black
    :alt: Code style: black

.. image:: https://pepy.tech/badge/issho
    :target: https://pepy.tech/project/issho
    :alt: Downloads

``issho`` and intuitive wrapper over paramiko_ for configuring
and talking to a remote host. keyring_ is used to
manage secrets locally.

``issho`` is designed such that interacting with a
single, heavily used remote machine should
be *easy*, and working with more than one remote
machine should be *simple*.


* Free software: MIT license
* Documentation: https://issho.readthedocs.io.

Installation
------------

Install with ``pip`` or ``conda``

::

    pip install issho


::

    conda install -c conda-forge issho


Features
--------

* Simple access to simple commands
    - Port forwarding
    - Executing commands over ssh
    - Transferring files over sftp
    - Running a hive query

Credits
-------

This package was created with Cookiecutter_
and the `audreyr/cookiecutter-pypackage`_ project template.

The sftp work and (future)testing framework is adapted from `Jeff Hinrichs`_'s
excellent pysftp_ package, and some of the ssh
framework is inspired by `Colin Wood`_'s sshed_.

Shout out to `Spencer Tipping`_, `Neal Fultz`_, and `Factual`_
for helping me learn to write my own tools.

Thanks to `Michael Vertuli`_ for helping test.

.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage
.. _paramiko: http://www.paramiko.org/
.. _sshed: https://github.com/cwood/sshed
.. _pysftp: https://bitbucket.org/dundeemt/pysftp
.. _keyring: https://github.com/jaraco/keyring
.. _Jeff Hinrichs: https://bitbucket.org/dundeemt/
.. _Colin Wood: https://github.com/cwood
.. _Spencer Tipping: https://github.com/spencertipping
.. _Neal Fultz: https://github.com/nfultz
.. _Michael Vertuli: https://github.com/vertuli
.. _Factual: https://www.factual.com


=======
History
=======

0.5.1 (2019-06-24)
------------------
* Add ``hadoop`` operators
* Allow some simple runtime execution by overriding ``__getattr__``
* Add new operators to docs

0.5.0 (2019-06-24)
------------------
* Error release

0.4.2 (2019-06-22)
------------------
* Add ``spark`` and ``spark_submit`` operator
* Upgrade to ``paramiko >=2.5.0``, fixing bug with recent versions of ``cryptography``

0.4.0 (2019-06-07)
------------------
* Switch from bumpversion to punch_

0.3.6 (2019-06-06)
------------------
* Format code using black
* Update install to include conda-forge path

0.3.5 (2019-05-23)
------------------
* Delete blank top line from beeline by default.

0.3.4 (2019-05-23)
------------------
* Allow hive to output to a file
* Add environment variable profiles with ``issho env``
* Update docs
* Allow users to re-use variables that have been set in previous configurations

0.3.3 (2019-05-18)
------------------
* Fix bug related to paramiko v2.4 not liking the Mac version of ssh keys.
* Added clear error messages to fix.

0.3.1 (2019-04-11)
------------------
* Fix bug regarding ssh vs local user identity

0.3.0 (2019-04-09)
------------------
* Add more configuration and reduce variables on the ``Issho`` object.
* Allow ``prompt_toolkit>=1.0.10`` to allow ``jupyter`` interoperability.
* Set up useful passwords using ``issho config``

0.2.5 (2019-03-25)
------------------
* Clean up hive operator and sftp callback
* Note that ``issho`` is incompatible with ``jupyter_console<6.0`` and ``ipython<7.0``


0.2.4 (2019-03-25)
------------------
* Fix bug in hive operator

0.2.3 (2019-03-25)
------------------
* Add ``.readthedocs.yml``; docs build now passes.

0.2.2 (2019-03-24)
------------------
* Clean up docs, try to have a passing build

0.2.1 (2019-03-22)
------------------
* Add docstrings for all functions
* Add autodocs
* Switch out ``bumpversion`` for ``bump2version``

0.2.0 (2019-03-22)
------------------
* Add Hive function
* Add configuration CLI
* Fix Travis config to Python 3.5+

0.1.0 (2019-02-26)
------------------

* First release on PyPI.

.. _punch: https://github.com/lgiordani/punch