{ "info": { "author": "James M", "author_email": "jimferd@gmail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python :: 3" ], "description": "# Remotelib\n---\n---\n\nVarious wrappers for subprocess, ssh, fabric.\n\n---\n\n## REX: Remote execute:\nREX(\n\ttarget,\n\tuser = None,\n\tpass_ = None,\n\tport = None,\n\taudit_file = None,\n\tsilent = True\n)\n\n### REX.rex(\"cmd\", audit=True, bg=False, logfilename=\"deploy1.log\")\nRemotely execute the command specified by cmd. If bg=True, runs with nohup\nand returns immediately. If audit = True, writes the stdout of the command\nto the specified logfilename on the remote server.\n\n#### REX.rex_push(local_path, remote_path): scp from the user over the active REX connection\n\n#### REX.rex_pull(remote_path, local_path): scp a file towards the user over an active REX connection\n\n\n\n## SSHTunnel(object)\n\n```python\nimport import ssh_tunnel\ntun = ssh_tunnel.SSHTunnel(\n [local_port(4444), remote_port(3306), \n remote interface(\"localhost\"), remote_user=, spin=(True,False),\n foreground=(True,False), immediate=(True, False)\n )\n```\n### RemoteDB(SSHTunnel):\n -- Execute MySQL queries over a forwarded SSH connection\n```pytho\nremote_db = ssh_tunnel.RemoteDB(\n db_hostname, db_user=, db_pass=, db_port=4444, database=, **SSHTunnel(*, **)\n )\n```\n### Tunnels(object):\n -- Registry for SSH Tunnels; also allows iteration (for example, to kill the connection.) Allows iteration.\n -- To register a tunnel, use the register()\n\n\n\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://vixal.net", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "remoteframe", "package_url": "https://pypi.org/project/remoteframe/", "platform": "", "project_url": "https://pypi.org/project/remoteframe/", "project_urls": { "Homepage": "http://vixal.net" }, "release_url": "https://pypi.org/project/remoteframe/0.1.3/", "requires_dist": null, "requires_python": "", "summary": "Wrappers for remote exec, local exec.", "version": "0.1.3" }, "last_serial": 5526141, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "991cc7f4185c48c83e3b16ee2312a654", "sha256": "a6b43a7f31b45cd64618aa38039ded1a62173d45f0cb373fce5be74108075404" }, "downloads": -1, "filename": "remoteframe-0.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "991cc7f4185c48c83e3b16ee2312a654", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9678, "upload_time": "2019-07-10T05:57:46", "url": "https://files.pythonhosted.org/packages/be/8a/139a7c661dcea9a68c7cb5f50b7eb6fc5e27129063fa71e8dd7815ddee32/remoteframe-0.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6bef96057a7a9ce79afa9e28501bfe2c", "sha256": "0539b315e7928e6c89f41eb104693b823e7dd2d4c82129f5aea41c6512cad9a7" }, "downloads": -1, "filename": "remoteframe-0.0.1.tar.gz", "has_sig": false, "md5_digest": "6bef96057a7a9ce79afa9e28501bfe2c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8424, "upload_time": "2019-07-10T05:57:48", "url": "https://files.pythonhosted.org/packages/5f/a3/bcb3df6a543890cd9ebb919b36503e01ed3d96a0094eccbe223a66b53c6e/remoteframe-0.0.1.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "e3f6e653d37c7c47a755cd206116b207", "sha256": "41905599ad67c7cdb90b42926019566c93ed3915ebe876f24f9aaa348f9b7af9" }, "downloads": -1, "filename": "remoteframe-0.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "e3f6e653d37c7c47a755cd206116b207", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9680, "upload_time": "2019-07-10T06:15:40", "url": "https://files.pythonhosted.org/packages/60/05/668283c04907ec8ad3de8fb1405f56df9519cf8977aa60911c1f7f3f113e/remoteframe-0.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "03fffa5821de7c2312395f609f3d3637", "sha256": "38e55b02561bcb62399f931b4af838d1801cd8d2da8f6f86cfbd712f73eafbd0" }, "downloads": -1, "filename": "remoteframe-0.0.5.tar.gz", "has_sig": false, "md5_digest": "03fffa5821de7c2312395f609f3d3637", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8424, "upload_time": "2019-07-10T06:15:42", "url": "https://files.pythonhosted.org/packages/75/89/c085d4f11d4444055a9ece49cc5344bf3176c0060a3f4066ef973adfe982/remoteframe-0.0.5.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "45af232e7eb950acd8b0d7c51461cc44", "sha256": "a7beb4120216a5bf2c1b672265e8dd8466f5d1b766548ccf8c470ee55f26ce66" }, "downloads": -1, "filename": "remoteframe-0.0.7-py3-none-any.whl", "has_sig": false, "md5_digest": "45af232e7eb950acd8b0d7c51461cc44", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9680, "upload_time": "2019-07-11T05:15:33", "url": "https://files.pythonhosted.org/packages/81/7f/e763995e38868bd4f82347aa94a4d46883445dd549fd5d981f3e4b2d524f/remoteframe-0.0.7-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "65365c194b014aa14097c47c9c97de36", "sha256": "08776a2283f41f592f7daf3e4501a28c73b64971baa9950c8d13489bff9f0447" }, "downloads": -1, "filename": "remoteframe-0.0.7.tar.gz", "has_sig": false, "md5_digest": "65365c194b014aa14097c47c9c97de36", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8416, "upload_time": "2019-07-11T05:15:34", "url": "https://files.pythonhosted.org/packages/0b/65/6862cb6a9f3519e28ca9979d1ef6a9ddb97153e8b0221f54a1c08beb0dfc/remoteframe-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "99f0857a35715c3e90c3742c4370a353", "sha256": "bd913192f7e4f575913df6ba8ddcc058173e9bfc6e76e5b32e8d0f212a672648" }, "downloads": -1, "filename": "remoteframe-0.0.8-py3-none-any.whl", "has_sig": false, "md5_digest": "99f0857a35715c3e90c3742c4370a353", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9746, "upload_time": "2019-07-13T05:20:31", "url": "https://files.pythonhosted.org/packages/87/01/5b61dd1428bc0af84562ee9419a1d8edcf2a5f5b12f5bfd56ea9eefab87a/remoteframe-0.0.8-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "29cddb9197962d85474b1e2c8774b2d5", "sha256": "11fdae2911dda9688a739734ebac0b168840fc764d9f61765b86d8f03e6cbf17" }, "downloads": -1, "filename": "remoteframe-0.0.8.tar.gz", "has_sig": false, "md5_digest": "29cddb9197962d85474b1e2c8774b2d5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8491, "upload_time": "2019-07-13T05:20:32", "url": "https://files.pythonhosted.org/packages/31/4d/177aa0adaa38a41bee4d3fb9b90a89415daaf4cd559cfefc86f00e25523b/remoteframe-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "8144784c3f2949896b81ca2022efe3a3", "sha256": "2cdd8bc2dae53ad4a7c0b1b6790aa50bccb5a51528974230f1885fffe30174e1" }, "downloads": -1, "filename": "remoteframe-0.0.9-py3-none-any.whl", "has_sig": false, "md5_digest": "8144784c3f2949896b81ca2022efe3a3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9770, "upload_time": "2019-07-13T05:25:24", "url": "https://files.pythonhosted.org/packages/7e/1f/0aa95b76a526a0491878ec1bd2dfc10796b8710fba8a21000290522a20d4/remoteframe-0.0.9-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "03d480334b8d28d0e79b0dd097dc7b00", "sha256": "334375cfb4aaf358352f62a4eaf3feef3747fc851ddabc4bae45f4f065f3c888" }, "downloads": -1, "filename": "remoteframe-0.0.9.tar.gz", "has_sig": false, "md5_digest": "03d480334b8d28d0e79b0dd097dc7b00", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8509, "upload_time": "2019-07-13T05:25:25", "url": "https://files.pythonhosted.org/packages/3f/8d/d0d3d9fc842a96e8f86e6a86efdcda9fd6c540938df453ecee90e0a707b9/remoteframe-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "8bc3dee396885ca93a5030b505947c7a", "sha256": "eede0234daa2341ceff01c1b792021bfaef254ef4b64dd08cd0ac9bdb9de3672" }, "downloads": -1, "filename": "remoteframe-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "8bc3dee396885ca93a5030b505947c7a", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9768, "upload_time": "2019-07-13T05:26:13", "url": "https://files.pythonhosted.org/packages/81/a9/d13b7aa12b1209009cad87f4afa0df5ee95b80e6f18c4c068e20e8057176/remoteframe-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a69f292fae40c193881bcd0cf52ca306", "sha256": "f65efd34c47ac20cc39e9ade4131f003b1d22b8313cd10bff0ee64efb38d9474" }, "downloads": -1, "filename": "remoteframe-0.1.0.tar.gz", "has_sig": false, "md5_digest": "a69f292fae40c193881bcd0cf52ca306", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8505, "upload_time": "2019-07-13T05:26:15", "url": "https://files.pythonhosted.org/packages/8a/65/b50503fb86e1b14874b0020bba0ee0b0f48db42afd3b54a3079f8c01c2bb/remoteframe-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "e04d0eaf2ad0b30f7daa2bba0d107c91", "sha256": "d1216d3cb885859d8e3047ca77b10358214bf097f78139eeace320de5bc54ffa" }, "downloads": -1, "filename": "remoteframe-0.1.1-py3-none-any.whl", "has_sig": false, "md5_digest": "e04d0eaf2ad0b30f7daa2bba0d107c91", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9768, "upload_time": "2019-07-13T05:28:30", "url": "https://files.pythonhosted.org/packages/f6/7e/3fdfbd0a3a16ccfdde139b8deebcdf6588c35584edc7ebbee6f60a41f076/remoteframe-0.1.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "1c280f0c279e31f9fd79b5ccbf20672d", "sha256": "1574d2556fbfaaf47aeb2a39d7b270cdf7ae744be5b06df7a328c779a458a362" }, "downloads": -1, "filename": "remoteframe-0.1.1.tar.gz", "has_sig": false, "md5_digest": "1c280f0c279e31f9fd79b5ccbf20672d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8508, "upload_time": "2019-07-13T05:28:31", "url": "https://files.pythonhosted.org/packages/03/19/72ff695a50e97fc877d190263116218a696e33f54e278ab577005a53ea1b/remoteframe-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "415d4957f00322e036c2522440a08197", "sha256": "f232380d4918be4587b4a6363214948e8fe7dce0a2d7b931ac487b26bb405f69" }, "downloads": -1, "filename": "remoteframe-0.1.2-py3-none-any.whl", "has_sig": false, "md5_digest": "415d4957f00322e036c2522440a08197", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9766, "upload_time": "2019-07-13T05:29:30", "url": "https://files.pythonhosted.org/packages/d4/83/daa0ecfabd2353ed5aea68b1cf4d8aacada561e5d0f4b80aa0e6d261bb81/remoteframe-0.1.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9de94f49fe14182ae055d98259c6ea4f", "sha256": "5e11e3a5031f9f7da4030c80208be8d84ace92b1872802eb3030dc5b0807bec4" }, "downloads": -1, "filename": "remoteframe-0.1.2.tar.gz", "has_sig": false, "md5_digest": "9de94f49fe14182ae055d98259c6ea4f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8507, "upload_time": "2019-07-13T05:29:31", "url": "https://files.pythonhosted.org/packages/fd/2e/c5f668fcaa0ca70ed0dfcb019e66ac71824a65911ae992c0dfdbc8686dd9/remoteframe-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "6636c9c916096fd164c9c94e2001f062", "sha256": "f342b25d9a1baa3cb27cc519b4891c1e38ae26d0e9ae284b86f09221f9dcf82e" }, "downloads": -1, "filename": "remoteframe-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6636c9c916096fd164c9c94e2001f062", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9787, "upload_time": "2019-07-13T05:33:36", "url": "https://files.pythonhosted.org/packages/ef/f1/b437c9809262fa2b422c0ae0a41eba90afd2152dcae00fc46bd14870085f/remoteframe-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d084f4a2e76908a20212168b0c906530", "sha256": "b8fb0b200e16b73fea8a4b43092e0f33c82c906bb2bcd3670fdfab7285a84c1f" }, "downloads": -1, "filename": "remoteframe-0.1.3.tar.gz", "has_sig": false, "md5_digest": "d084f4a2e76908a20212168b0c906530", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8523, "upload_time": "2019-07-13T05:33:37", "url": "https://files.pythonhosted.org/packages/ca/5e/5c3946b4c03b6c086d736823f5a9bb60ee5ec8c1bb2c3b8cc0fa3cf476ab/remoteframe-0.1.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6636c9c916096fd164c9c94e2001f062", "sha256": "f342b25d9a1baa3cb27cc519b4891c1e38ae26d0e9ae284b86f09221f9dcf82e" }, "downloads": -1, "filename": "remoteframe-0.1.3-py3-none-any.whl", "has_sig": false, "md5_digest": "6636c9c916096fd164c9c94e2001f062", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 9787, "upload_time": "2019-07-13T05:33:36", "url": "https://files.pythonhosted.org/packages/ef/f1/b437c9809262fa2b422c0ae0a41eba90afd2152dcae00fc46bd14870085f/remoteframe-0.1.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d084f4a2e76908a20212168b0c906530", "sha256": "b8fb0b200e16b73fea8a4b43092e0f33c82c906bb2bcd3670fdfab7285a84c1f" }, "downloads": -1, "filename": "remoteframe-0.1.3.tar.gz", "has_sig": false, "md5_digest": "d084f4a2e76908a20212168b0c906530", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8523, "upload_time": "2019-07-13T05:33:37", "url": "https://files.pythonhosted.org/packages/ca/5e/5c3946b4c03b6c086d736823f5a9bb60ee5ec8c1bb2c3b8cc0fa3cf476ab/remoteframe-0.1.3.tar.gz" } ] }