{"id":23521482,"url":"https://github.com/tubone24/ssh_config_json","last_synced_at":"2025-04-19T19:43:28.618Z","repository":{"id":38457502,"uuid":"309228714","full_name":"tubone24/ssh_config_json","owner":"tubone24","description":"SSH Config JSON is dumping JSON for your ssh config include IdentityFiles and restoring those.","archived":false,"fork":false,"pushed_at":"2024-11-23T00:30:56.000Z","size":76,"stargazers_count":2,"open_issues_count":20,"forks_count":1,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-12-23T23:30:30.463Z","etag":null,"topics":["aes","backup","pem","ssh-config"],"latest_commit_sha":null,"homepage":"https://ssh-config-json.readthedocs.io/en/latest/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tubone24.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.rst","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-11-02T01:41:16.000Z","updated_at":"2023-09-03T03:23:56.000Z","dependencies_parsed_at":"2024-01-12T15:47:36.220Z","dependency_job_id":"42b9e4b8-fcfc-4afe-b89a-6b16ca1c8f5a","html_url":"https://github.com/tubone24/ssh_config_json","commit_stats":{"total_commits":60,"total_committers":4,"mean_commits":15.0,"dds":0.2666666666666667,"last_synced_commit":"12c75a0b70835d6b27d89e9d640c2a05a8fe67a9"},"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubone24%2Fssh_config_json","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubone24%2Fssh_config_json/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubone24%2Fssh_config_json/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tubone24%2Fssh_config_json/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tubone24","download_url":"https://codeload.github.com/tubone24/ssh_config_json/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":231260784,"owners_count":18349461,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["aes","backup","pem","ssh-config"],"created_at":"2024-12-25T17:12:22.124Z","updated_at":"2024-12-25T17:12:22.834Z","avatar_url":"https://github.com/tubone24.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"===============\nSSH Config JSON\n===============\n\n``SSH Config JSON`` is dumping JSON for your ssh config include IdentityFiles and restoring those.\n\n------\n\n.. image:: http://img.shields.io/badge/license-MIT-blue.svg?style=flat\n   :target: https://github.com/tubone24/ebook_homebrew/blob/master/LICENSE\n   :alt: LICENSE\n\n.. image:: https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square\n   :target: http://makeapullrequest.com\n   :alt: PR Welcomes\n\n.. image:: https://github.com/tubone24/ssh_config_json/workflows/TestingPythonPackage/badge.svg\n   :target: https://github.com/tubone24/ssh_config_json/actions?query=workflow%3ATestingPythonPackage\n   :alt: GitHub Actions\n\n.. image:: https://coveralls.io/repos/github/tubone24/ssh_config_json/badge.svg?branch=main\n   :target: https://coveralls.io/github/tubone24/ssh_config_json?branch=main\n   :alt: Coverage\n\n.. image:: https://img.shields.io/pypi/dm/ssh-config-json.svg\n   :target: https://pypi.org/project/ssh-config-json/\n   :alt: PyPI downloads\n\n.. image:: https://img.shields.io/pypi/v/ssh-config-json.svg\n   :target: https://pypi.org/project/ssh-config-json/\n   :alt: pip Version\n\n.. image:: https://img.shields.io/pypi/pyversions/ssh-config-json.svg\n   :target: https://pypi.org/project/ssh-config-json/\n   :alt: Python Version\n\n.. image:: https://img.shields.io/pypi/format/ssh-config-json.svg\n   :target: https://pypi.org/project/ssh-config-json/\n   :alt: pip Format\n\n.. image:: https://readthedocs.org/projects/ssh-config-json/badge/?version=latest\n   :target: https://ssh-config-json.readthedocs.io/en/latest/?badge=latest\n   :alt: Documentation Status\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n   :target: https://github.com/psf/black\n   :alt: Black Format\n\n\n``SSH Config JSON`` enables you to pack and restore your SSH Config and Private Key in JSON format,\nallowing you to backup, put to CI and share with others in the project.\n\nFeatures\n========\n\n* Dumping your SSH Config to JSON and restore it\n* Packing up IdentityFiles with the JSON\n* AES encrypting with the JSON to enable pushing and saving public GitHub Repository\n\nGetting Started\n===============\n\n``SSH Config JSON`` uses ``The Python Package Index(Pypi)``, so that you can use ``pip`` installer.\n\npip installer\n----------------------\n\n.. code-block:: bash\n\n   $ pip install ssh-config-json\n\nUsage\n=====\n\nYou can use global command ``scj`` .\n\nShow help.\n\n.. code-block:: bash\n\n   $ scj -h\n   SSH Config JSON\n   Overview:\n     Dump JSON for your ssh config include IdentityFiles and restore those.\n\n   Usage:\n     scj [-h|--help] [-v|--version]\n     scj dump \u003cfile\u003e [-c|--config=\u003cconfig\u003e] [-i|--identityFile]　[-e|--encrypt] [--key=\u003ckey\u003e]\n     scj restore \u003cfile\u003e [-c|--config=\u003cconfig\u003e] [-i|--identityFile]　[-d|--decrypt=\u003ckey\u003e]\n\n   Options:\n     dump                       : dump SSH Config file to JSON\n     restore                    : Restore SSH Config file from JSON\n     \u003cfile\u003e                     : Dumped json file\n     -h, --help                 : Help\n     -v, --version              : Show version\n     -c, --config=\u003cconfig\u003e      : Specific SSH Config file path [default: ~/.ssh/config]\n     -i, --identityFile         : Include IdentityFiles\n     -e, --encrypt              : Encrypt JSON dump with AES\n     --key=\u003ckey\u003e                : Set specify key string\n     -d, --decrypt=\u003ckey\u003e        : Decrypt JSON dump with AES\n\nEx1) Dump your SSH Config to JSON\n\n.. code-block:: bash\n\n   $ scj dump dump_config.json\n\nEx2) Dump your SSH Config to JSON with IdentityFiles\n\n.. code-block:: bash\n\n   $ scj dump dump_config.json -i\n\nEx3) Restore JSON to SSH Config\n\n.. code-block:: bash\n\n   $ scj restore dump_config.json\n\nEx4) Restore JSON to SSH Config with IdentityFiles\n\n.. code-block:: bash\n\n   $ scj restore dump_config.json -i\n\nEx5) Dump your SSH Config to JSON with AES Encrypt\n\n.. code-block:: bash\n\n   $ scj dump dump_config.json -i -e\n   Encrypt key: 1mado1wmf9amsie0jvo0kfmai9cjasfv # \u003c= This is the \"Key\"!!\n\nEx6) Decrypt it\n\n.. code-block:: bash\n\n   $ scj restore dump_config.json -i -d 1mado1wmf9amsie0jvo0kfmai9cjasfv\n\nTesting\n=======\n\nUnit Test\n---------\n\nUsing pytest, if you want to unit testing.\n\n.. code-block:: bash\n\n   $ pytest\n\nIf you want to get coverage report, run coverage and check the report.\n\n.. code-block:: bash\n\n   $ coverage run --source=ssh_config_json -m pytest\n   $ coverage report -m\n\nIntegration Test\n----------------\n\nUsing pytest, if you want to do integrated tests with mark \"--it\".\n\n.. code-block:: bash\n\n   $ pytest --it\n\nWith tox\n--------\n\nWith tox, you can test multiple python version.(only python 3.6, 3.7, 3.8)\n\n.. code-block:: bash\n\n   $ tox\n\nDocuments\n=========\n\nThe Document is `HERE \u003chttps://ssh-config-json.readthedocs.io/en/latest/\u003e`_ written by mkdocs.\n\nLicence\n=======\n\nThis software is released under the MIT License, see LICENSE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftubone24%2Fssh_config_json","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftubone24%2Fssh_config_json","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftubone24%2Fssh_config_json/lists"}