{ "info": { "author": "Christian Zagrodnick", "author_email": "mail@gocept.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: Developers", "License :: OSI Approved", "License :: OSI Approved :: Zope Public License", "Natural Language :: English", "Operating System :: POSIX", "Operating System :: POSIX :: BSD", "Operating System :: POSIX :: Linux", "Operating System :: Unix", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 2 :: Only", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Communications", "Topic :: Internet", "Topic :: Internet :: File Transfer Protocol (FTP)" ], "description": "========\nSFTPCopy\n========\n\nsftpcopy allows to copy files to or from a remote server -- integrates with\ngocept.filestore. sftpcopy will take files from the ``new`` directory, copy\nthem to the remote server and put them into ``cur`` on success. Likewise it will\ndownload files from the remote server and put them into the ``new``\ndirectory for another application to pick it up.\n\nUsage\n=====\n\nYou can either give the name of a configuration file on the commandline, or\npass the configuration values as a dict directly to the entrypoint (useful for\nbuildout integration). The configuration file has the following format::\n\n [general]\n mode = upload # or download\n logfile = /path/to/logfile # defaults to stdout if not given\n buffer_size = 65536\n skip_files =\n name_of_file_to_skip_1\n name_of_file_to_skip_2\n\n [local]\n path = /path/on/local/machine\n\n [remote]\n path = /path/on/remote/machine\n hostname = remote.host\n port = 22\n username = user\n password = secret\n\nThe configdict uses the following keys instead:\n\n- logfile\n- buffer_size (default: 65536, i.e. 64 KiB)\n- keepalive_interval (default: 5 seconds)\n- local_path\n- remote_path\n- hostname\n- port\n- username\n- password\n- key_filename\n- skip_files\n\nkey_filename takes precedence over password. If key_filename ends with ``dsa``,\nit's assumed to be a DSA key, else an RSA key. Note that the key file must not\nbe password protected.\n\n`skip_files` is a list of filenames (local or remote), which are skipped during\nupload or download.\n\nFiles are copied in chunks of buffer_size to avoid loading big files into\nmemory at once.\n\nYou can also use sftpcopy as a python object like this::\n\n import gocept.sftpcopy\n sftp = gocept.sftpcopy.SFTPCopy(\n '/path/on/local/machine',\n 'remote.host', 22, 'user', 'secret', '/path/on/remote/machine',\n skip_files=['my_file_to_ignore'])\n sftp.connect()\n sftp.uploadNewFiles() # or sftp.downloadNewFiles()\n\n\nAMQP integration\n================\n\nIf you require the `amqp` extra, gocept.sftpcopy offers a `gocept.amqprun`_\nqueue handler that uploads the message body as a file via SFTP (it respects the\n``X-Filename`` header or generates a filename based on routing key and a\ntimestamp). Here's an example ZCML snippet::\n\n \n\n \n \n\n \n\n \n\n\n.. _`gocept.amqprun`: http://pypi.python.org/pypi/gocept.amqprun\n\n\nChangelog\n=========\n\n0.6.0 (2016-11-02)\n==================\n\n- Pinning version numbers of dependencies for tests.\n\n- Migrate to py.test as testrunner.\n\n- Add new `skip_files` parameter to skip upload or download of files.\n\n\n0.5.1 (2015-04-15)\n==================\n\n- Update `bootstrap.py` to version from ``zc.buildout 2.3.0``.\n\n- Move repository to `bitbucket.org`.\n\n\n0.5.0 (2014-11-26)\n==================\n\n- Set up keep-alive checking.\n\n\n0.4.1 (2014-03-07)\n==================\n\n- Fixed brown-bag release.\n\n\n0.4.0 (2014-03-07)\n==================\n\n- Copy files in chunks instead of loading each complete file into memory.\n There is a new config option ``buffer_size`` which defaults to 64 kB.\n\n\n0.3.0 (2014-02-20)\n==================\n\n- Support key-based authentication.\n\n- Check that the size of the transmitted file after up/download matches what\n was transferred.\n\n\n0.2.2 (2012-04-04)\n==================\n\n- Update to gocept.amqprun-0.8.\n\n\n0.2.1 (2012-03-29)\n==================\n\n- Make amqp server configurable for tests.\n- Clean up garbage connections left by tests (#10634).\n\n\n0.2 (2012-02-22)\n================\n\n- Add ``gocept.amqprun`` integration.\n\n\n0.1.4 (2009-11-16)\n==================\n\n- Log errors that occur while connecting\n\n\n0.1.3 (2008-02-27)\n==================\n\n- Added ``configdict`` argument to main function for easier buildout\n integration.\n\n\n0.1.2 (2008-02-18)\n==================\n\n- Fixed bug in connection logging.\n- Remember filestore so we can actually upload/download.\n- Did some testing predefined user.\n\n\n0.1.1 (2007-11-13)\n==================\n\n- Fixed brown back release 0.1 which was not usable at all since there were\n various files missing in the archive.", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://bitbucket.org/gocept/gocept.sftpcopy", "keywords": "", "license": "ZPL 2.1", "maintainer": "", "maintainer_email": "", "name": "gocept.sftpcopy", "package_url": "https://pypi.org/project/gocept.sftpcopy/", "platform": "", "project_url": "https://pypi.org/project/gocept.sftpcopy/", "project_urls": { "Homepage": "https://bitbucket.org/gocept/gocept.sftpcopy" }, "release_url": "https://pypi.org/project/gocept.sftpcopy/0.6.0/", "requires_dist": null, "requires_python": "", "summary": "Upload/download files via SFTP to a maildir structure", "version": "0.6.0" }, "last_serial": 2437967, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "0e3798487468aa14071dfdfa7cc5249c", "sha256": "deb021e95c8ac14c28e91eeee20e96d21ffc4db0062101a98c29e26cb9436baa" }, "downloads": -1, "filename": "gocept.sftpcopy-0.1.tar.gz", "has_sig": true, "md5_digest": "0e3798487468aa14071dfdfa7cc5249c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4797, "upload_time": "2007-10-26T08:12:31", "url": "https://files.pythonhosted.org/packages/78/9a/5b5b0ea749b85d82048d6f1694a8ca9098252a7c41f2398fbd2c674d6bd1/gocept.sftpcopy-0.1.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "9a124913c6bd785a66ac58fef0dc2719", "sha256": "575f7ab1808a230e317c07047e2939cd208bc3916a5c09cfbff487913a08cc1e" }, "downloads": -1, "filename": "gocept.sftpcopy-0.1.1.tar.gz", "has_sig": false, "md5_digest": "9a124913c6bd785a66ac58fef0dc2719", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5004, "upload_time": "2007-11-13T07:58:24", "url": "https://files.pythonhosted.org/packages/ec/b8/92d6eff21517f30a09ff86b7794b0e60ebae91f4752feda4f1e7e4221427/gocept.sftpcopy-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "0ae766cb2b61ceab469f9857fdbd36b3", "sha256": "21e98313826dc9699f1328bf05c4b5d5b4b4da74e36918e8da3ff7613e1d11ca" }, "downloads": -1, "filename": "gocept.sftpcopy-0.1.2.tar.gz", "has_sig": false, "md5_digest": "0ae766cb2b61ceab469f9857fdbd36b3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5075, "upload_time": "2008-02-18T07:43:35", "url": "https://files.pythonhosted.org/packages/05/2b/dd51614a966cb3050d1b50d2208e615127b89f54ce1bd931e4b34bde878e/gocept.sftpcopy-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "557cb94ec86536454c249a615a920f9b", "sha256": "2d8a25ef9f8295335c42ff8d3f199fe90bdbf67640ec563d50b4440a58903804" }, "downloads": -1, "filename": "gocept.sftpcopy-0.1.3.tar.gz", "has_sig": false, "md5_digest": "557cb94ec86536454c249a615a920f9b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5238, "upload_time": "2008-02-27T11:48:09", "url": "https://files.pythonhosted.org/packages/63/9a/79e6f16274a33658943deb0dcc81b60dc6a0803ad2a65b867ba10d276c6d/gocept.sftpcopy-0.1.3.tar.gz" } ], "0.1.4": [ { "comment_text": "", "digests": { "md5": "75abd24323576c8e5a049d74048eb9e0", "sha256": "7321e1d51d659f3cebd7e4e7f49b66bf8af7ea0e21a28aebd37e44dd0d80ad7b" }, "downloads": -1, "filename": "gocept.sftpcopy-0.1.4.tar.gz", "has_sig": false, "md5_digest": "75abd24323576c8e5a049d74048eb9e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5362, "upload_time": "2009-11-16T14:34:14", "url": "https://files.pythonhosted.org/packages/9a/a6/1b6d3511839bb99c2030b52cef598a107e518d7b888656db2fd4020f806e/gocept.sftpcopy-0.1.4.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "8d49fe8b017e7b93b5f49a4f2667bea6", "sha256": "ca46f9ae6a9374484159873d495e2e16f0a13c324e31f0da8c89f535a79e5d8a" }, "downloads": -1, "filename": "gocept.sftpcopy-0.2.tar.gz", "has_sig": false, "md5_digest": "8d49fe8b017e7b93b5f49a4f2667bea6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10512, "upload_time": "2012-02-22T08:07:50", "url": "https://files.pythonhosted.org/packages/52/d5/3366e0e17a463d0d4866abb44210db26a598f6b0135dccbce338b41c747a/gocept.sftpcopy-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "b6378a209aa95666b6f92072c230355e", "sha256": "978e4aefa23608915efbb9585da9f4acfc4c4b3b7dab63a44b8075d1dd0b2e43" }, "downloads": -1, "filename": "gocept.sftpcopy-0.2.1.tar.gz", "has_sig": false, "md5_digest": "b6378a209aa95666b6f92072c230355e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10898, "upload_time": "2012-03-29T09:49:39", "url": "https://files.pythonhosted.org/packages/5c/22/2f2dd595a192e765703e32febc0f3811bb36e9cfc044c566982aa410a065/gocept.sftpcopy-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "9d2a7c56df23790c1cefb851d6e99898", "sha256": "cc4692b82cf332d20201ad7a901fb4c414f1227bf9f0aba8a75e4ba53d03912b" }, "downloads": -1, "filename": "gocept.sftpcopy-0.2.2.zip", "has_sig": false, "md5_digest": "9d2a7c56df23790c1cefb851d6e99898", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18323, "upload_time": "2012-04-04T15:06:46", "url": "https://files.pythonhosted.org/packages/ae/9d/07e76868903af3e20f026c39640da5f4d655113920b06a8eb0765cf6a36f/gocept.sftpcopy-0.2.2.zip" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "b3be049d54099f9aaf35edff245ec1aa", "sha256": "f4d2fee6f63531a639ba1604318f3f9d3ebe105ac3631a07edbf5e43b0bde15c" }, "downloads": -1, "filename": "gocept.sftpcopy-0.3.0.zip", "has_sig": false, "md5_digest": "b3be049d54099f9aaf35edff245ec1aa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 22809, "upload_time": "2014-02-20T10:45:41", "url": "https://files.pythonhosted.org/packages/bc/8e/f8add5f0f9c63e6f2ae3b9e898142e72690696ec2473a4cb866613453c54/gocept.sftpcopy-0.3.0.zip" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "76c77cdc875cf79df2234ceeaddcbacb", "sha256": "e4e09cbd570f37bb791cc29f7f9ed3c9f877b2bbc11dcb6be6b2cbaff10cc6de" }, "downloads": -1, "filename": "gocept.sftpcopy-0.4.1.tar.gz", "has_sig": true, "md5_digest": "76c77cdc875cf79df2234ceeaddcbacb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15203, "upload_time": "2014-03-06T23:25:58", "url": "https://files.pythonhosted.org/packages/aa/c6/ca8cdde501d74ff648723264c500fb983bd391015d631341364454c875c6/gocept.sftpcopy-0.4.1.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "f1d135d2fe32a9329e0db19181b6743b", "sha256": "52ee4c529c38f2bafd4fa89ccc9a3a46ee0267d975f68626268ba4647a5911fb" }, "downloads": -1, "filename": "gocept.sftpcopy-0.5.0.zip", "has_sig": false, "md5_digest": "f1d135d2fe32a9329e0db19181b6743b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23922, "upload_time": "2014-11-26T08:45:03", "url": "https://files.pythonhosted.org/packages/58/fa/852a28e052e8b9e4bb49ee2b3f68c8d281e605f529a10c408f3a6f10b200/gocept.sftpcopy-0.5.0.zip" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "27cd856f716f02d43490f15d9a8fdc10", "sha256": "ddc58f71b59304339798c5e21ad51a71eb2ae86788fd1af95157f4f59bbb334d" }, "downloads": -1, "filename": "gocept.sftpcopy-0.5.1.tar.gz", "has_sig": false, "md5_digest": "27cd856f716f02d43490f15d9a8fdc10", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15023, "upload_time": "2015-04-15T08:16:22", "url": "https://files.pythonhosted.org/packages/e0/b5/0a7e48e41ca6c58de41fdd658253aac9fbde2cfba5772d7e9a75269c6111/gocept.sftpcopy-0.5.1.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "8ddf5480d09e906fbb8e618aed99054a", "sha256": "0be5b29736eb1457c5035c832ecdd115797e01ab38bf848a369ae7d2026bbaa0" }, "downloads": -1, "filename": "gocept.sftpcopy-0.6.0.tar.gz", "has_sig": false, "md5_digest": "8ddf5480d09e906fbb8e618aed99054a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14798, "upload_time": "2016-11-02T15:43:48", "url": "https://files.pythonhosted.org/packages/9a/a5/7df5c978da6e808a942e4dda7e1f075a4ce9454e03e98d568a7380efe947/gocept.sftpcopy-0.6.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "8ddf5480d09e906fbb8e618aed99054a", "sha256": "0be5b29736eb1457c5035c832ecdd115797e01ab38bf848a369ae7d2026bbaa0" }, "downloads": -1, "filename": "gocept.sftpcopy-0.6.0.tar.gz", "has_sig": false, "md5_digest": "8ddf5480d09e906fbb8e618aed99054a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 14798, "upload_time": "2016-11-02T15:43:48", "url": "https://files.pythonhosted.org/packages/9a/a5/7df5c978da6e808a942e4dda7e1f075a4ce9454e03e98d568a7380efe947/gocept.sftpcopy-0.6.0.tar.gz" } ] }