Skip to main content

Dump JSON for your ssh config include IdentityFiles and restore those.

Project description

SSH Config JSON

SSH Config JSON is dumping JSON for your ssh config include IdentityFiles and restoring those.


LICENSE PR Welcomes GitHub Actions Coverage PyPI downloads pip Version Python Version pip Format Documentation Status Black Format

SSH Config JSON enables you to pack and restore your SSH Config and Private Key in JSON format, allowing you to backup, put to CI and share with others in the project.

Features

  • Dumping your SSH Config to JSON and restore it

  • Packing up IdentityFiles with the JSON

  • AES encrypting with the JSON to enable pushing and saving public GitHub Repository

Getting Started

SSH Config JSON uses The Python Package Index(Pypi), so that you can use pip installer.

pip installer

$ pip install ssh-config-json

Usage

You can use global command scj .

Show help.

$ scj -h
SSH Config JSON
Overview:
  Dump JSON for your ssh config include IdentityFiles and restore those.

Usage:
  scj [-h|--help] [-v|--version]
  scj dump <file> [-c|--config=<config>] [-i|--identityFile] [-e|--encrypt] [--key=<key>]
  scj restore <file> [-c|--config=<config>] [-i|--identityFile] [-d|--decrypt=<key>]

Options:
  dump                       : dump SSH Config file to JSON
  restore                    : Restore SSH Config file from JSON
  <file>                     : Dumped json file
  -h, --help                 : Help
  -v, --version              : Show version
  -c, --config=<config>      : Specific SSH Config file path [default: ~/.ssh/config]
  -i, --identityFile         : Include IdentityFiles
  -e, --encrypt              : Encrypt JSON dump with AES
  --key=<key>                : Set specify key string
  -d, --decrypt=<key>        : Decrypt JSON dump with AES

Ex1) Dump your SSH Config to JSON

$ scj dump dump_config.json

Ex2) Dump your SSH Config to JSON with IdentityFiles

$ scj dump dump_config.json -i

Ex3) Restore JSON to SSH Config

$ scj restore dump_config.json

Ex4) Restore JSON to SSH Config with IdentityFiles

$ scj restore dump_config.json -i

Ex5) Dump your SSH Config to JSON with AES Encrypt

$ scj dump dump_config.json -i -e
Encrypt key: 1mado1wmf9amsie0jvo0kfmai9cjasfv # <= This is the "Key"!!

Ex6) Decrypt it

$ scj restore dump_config.json -i -d 1mado1wmf9amsie0jvo0kfmai9cjasfv

Testing

Unit Test

Using pytest, if you want to unit testing.

$ pytest

If you want to get coverage report, run coverage and check the report.

$ coverage run --source=ssh_config_json -m pytest
$ coverage report -m

Integration Test

Using pytest, if you want to do integrated tests with mark “–it”.

$ pytest --it

With tox

With tox, you can test multiple python version.(only python 3.6, 3.7, 3.8)

$ tox

Documents

The Document is HERE written by mkdocs.

Licence

This software is released under the MIT License, see LICENSE.

Changelog

v1.0.0 (2020-11-11)

  • First release.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ssh_config_json-1.0.1.tar.gz (9.1 kB view details)

Uploaded Source

Built Distributions

ssh_config_json-1.0.1-py3.8.egg (13.1 kB view details)

Uploaded Source

ssh_config_json-1.0.1-py2.py3-none-any.whl (7.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ssh_config_json-1.0.1.tar.gz.

File metadata

  • Download URL: ssh_config_json-1.0.1.tar.gz
  • Upload date:
  • Size: 9.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.8.6

File hashes

Hashes for ssh_config_json-1.0.1.tar.gz
Algorithm Hash digest
SHA256 95d0c3f0fce3efbb2d35353dc4365eb478b55349ff73766cdc1ed89f4fd23242
MD5 101cff206acec7d2dbfd5041bf306190
BLAKE2b-256 f36f1ec63d59a65b531c0c3749f47c14c81b4a291f696b617c08fc2319a4faa2

See more details on using hashes here.

File details

Details for the file ssh_config_json-1.0.1-py3.8.egg.

File metadata

  • Download URL: ssh_config_json-1.0.1-py3.8.egg
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.8.6

File hashes

Hashes for ssh_config_json-1.0.1-py3.8.egg
Algorithm Hash digest
SHA256 6dfab940017ee29cdf21d6aafeb4f42034811c8245aa9eab727db88a0ab182aa
MD5 9cd25a240c195bddb9613a826aa7d94f
BLAKE2b-256 e08f9b8c9ee8b108cb594ce401e0bd4f38a5f517422281ba6ee91f51418847b9

See more details on using hashes here.

File details

Details for the file ssh_config_json-1.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: ssh_config_json-1.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.0 CPython/3.8.6

File hashes

Hashes for ssh_config_json-1.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 cfdf945b74a7d3f57cbb50b3f5fe278778e4c3a8210950c0f38e3326a6fe3e26
MD5 3c1e341882782a7015e4080cc9e4611e
BLAKE2b-256 d88f356b2e3136e397fdb3ea1eae66760180f0a2a53d56973a06713e8f3c1daf

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page