{ "info": { "author": "Thomas Guettler", "author_email": "info.compare-with-remote@thomas-guettler.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: Apache Software License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5" ], "description": ".. image:: https://travis-ci.org/guettli/compare-with-remote.svg?branch=master\n :target: https://travis-ci.org/guettli/compare-with-remote\n\n\ncompare-with-remote\n---------------------\n\nCompare local files with remote files \n\nAbout\n-----\n\nThis is a generic file comparing tool. I wrote it to help the transition from \"pet to cattle\". With other words\nI am switching from linux server managed with vi and ssh to configuration management.\n\nIt helps you to compare files on a remote host with files on your local file system.\n\nInstall\n-------\n\n.. code-block:: shell\n\n pip install -e git+https://github.com/guettli/compare-with-remote.git#egg=compare-with-remote\n\nUsage\n-----\n\n.. code-block:: shell\n\n ===> compare-with-remote -h\n usage: compare-with-remote [-h]\n [--only-files-containing-pattern ONLY_FILES_CONTAINING_PATTERN]\n directory_url_one directory_url_two\n\n compare two directories. Directories can get fetched via ssh first, then\n \"meld\" get called to copmare the directories. See https://github.com/guettli\n /compare-with-remote\n\n positional arguments:\n directory_url_one [[user@]remote-host:]dir\n directory_url_two [[user@]remote-host:]dir\n\n optional arguments:\n -h, --help show this help message and exit\n --only-files-containing-pattern ONLY_FILES_CONTAINING_PATTERN\n\n\nExamples\n--------\n\nYou want to compare all files in the /etc directory which contain the word \"rsyslog\":\n\n.. code-block:: shell\n\n root@local-server> compare-with-remote --only-files-containing-pattern rsyslog \\\n root@server-with-cute-name-1:/etc \\\n root@server-with-cute-name-2:/etc\n\nYou can compare the output of scripts like this:\n\n.. code-block:: shell\n\n root@local-server> compare-with-remote \\\n 'postgres@server-with-cute-name-1:psql -c \"select app, name from django_migrations order by id\"' \\\n 'postgres@server-with-cute-name-2:'\n\nIf you don't provide a remote-command for the second host, then the command from the first host will get called. In this case\nall rows of a database table get compared.\n\n\nScreenshots\n-----------\n\nAfter fetching the files, the script calls the tool \"meld\" to show the actual diff:\n\n.. image:: https://github.com/guettli/compare-with-remote/blob/master/docs/screenshot-of-meld-compare-directory.png\n\n\nHere is a screenshot of meld showing the difference between two files:\n\n.. image:: https://github.com/guettli/compare-with-remote/blob/master/docs/screenshot-of-meld-compare-file.png\n\nDon't be shy\n------------\n\nI want to know what you think and feel. Please leave a comment via the github issue tracker. I love feedback.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/guettli/compare-with-remote/", "keywords": "", "license": "Apache Software License 2.0", "maintainer": "", "maintainer_email": "", "name": "compare-with-remote", "package_url": "https://pypi.org/project/compare-with-remote/", "platform": "", "project_url": "https://pypi.org/project/compare-with-remote/", "project_urls": { "Homepage": "https://github.com/guettli/compare-with-remote/" }, "release_url": "https://pypi.org/project/compare-with-remote/0.12.0/", "requires_dist": null, "requires_python": "", "summary": "Compare local script output with remote script output", "version": "0.12.0" }, "last_serial": 2824868, "releases": { "0.10.0": [ { "comment_text": "", "digests": { "md5": "be15640b8cdb88334c0df0f4a02f4662", "sha256": "9dfe3d6c22b6f44d369e286c8242bf80ff6964cc16749f18c1e5d755a058afac" }, "downloads": -1, "filename": "compare-with-remote-0.10.0.tar.gz", "has_sig": false, "md5_digest": "be15640b8cdb88334c0df0f4a02f4662", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4623, "upload_time": "2017-04-21T13:35:31", "url": "https://files.pythonhosted.org/packages/78/c7/8635f6ad697959dddc18bb7b598ad6a5a8a928293ae7cda5b5d141cc61e9/compare-with-remote-0.10.0.tar.gz" } ], "0.12.0": [ { "comment_text": "", "digests": { "md5": "2eddae8d7d9f82deee6668d3fbbe4242", "sha256": "459bb3c36f361838ce9c5c430cb2756ed4f21d1fe22c93199858e9c76931801e" }, "downloads": -1, "filename": "compare-with-remote-0.12.0.tar.gz", "has_sig": false, "md5_digest": "2eddae8d7d9f82deee6668d3fbbe4242", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4644, "upload_time": "2017-04-24T07:04:30", "url": "https://files.pythonhosted.org/packages/22/19/623767ec3900ff73a510c84ab7e8116fe4e4a47c9b1e7a72d5ed563384c1/compare-with-remote-0.12.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "2eddae8d7d9f82deee6668d3fbbe4242", "sha256": "459bb3c36f361838ce9c5c430cb2756ed4f21d1fe22c93199858e9c76931801e" }, "downloads": -1, "filename": "compare-with-remote-0.12.0.tar.gz", "has_sig": false, "md5_digest": "2eddae8d7d9f82deee6668d3fbbe4242", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4644, "upload_time": "2017-04-24T07:04:30", "url": "https://files.pythonhosted.org/packages/22/19/623767ec3900ff73a510c84ab7e8116fe4e4a47c9b1e7a72d5ed563384c1/compare-with-remote-0.12.0.tar.gz" } ] }