{ "info": { "author": "Alex Holmes", "author_email": "alex.holmes@isotoma.com", "bugtrack_url": null, "classifiers": [], "description": "=======\npkgsync\n=======\n\nOverview\n========\n\npkgsync is a tool used to move python packages from one repository to another.\nSay, for example you use a pypi-clone application such as `chishop\n`_ and you want to synchronise some packages\nfrom pypi to it, or you have multiple pypi clone applications, etc.\n\nThis makes sure that all the versions of some package on repository A are\ncopied to repository B if they don't already exist on B.\n\nBenefits\n--------\n\npkgsync is particularly useful because it uses\n`pkginfo `_ to introspect packages so you\ndon't have to::\n\n $ tar zxf something-1.2.3.tar.gz\n $ cd something-1.2.3/\n $ python setup.py sdist register upload -r privaterepo\n\nwhich is flawed for being slow and often showing up issues where people have\npackaged their software incorrectly, with missing MANIFEST.in files, etc., plus\ndates change, md5sums change... in short it's messy. Using pkgsync is less-so.\n\nPassword-Protected Repositories\n-------------------------------\n\nSupports upload and download authentication just in case you have a password-\nprotected private repository to copy from/to.\n\nOld-Style Packages\n------------------\n\nVery naively support for old-style packages - packages without any setuptools\nmetadata in them. For these packages, we attempt to use the filename to\ndetermine the package name and release, then register the package using\nthe value 'UNKNOWN' for all the other setuptools metadata (as per the spec).\n\nUsage\n=====\n\nDefault ``--source-url`` is http://pypi.python.org since that's probably your use\n-case.\n\nIf ``--destination-username`` is provided and ``--destination-password`` is not,\nyou'll be prompted for a password.\n\nFull command-line options documentation available by doing ``pkgsync --help``\n\nExample usage::\n\n pkgsync --destination-url=https://eggsample.com --destination-username=youruser tzinfo Django celery\n\nFull repository sync::\n\n pkgsync --source-url=https://eggsample.com --destination-url=https://newrepo.com --destination-username=youruser --all\n\n\nDevelopment Instructions\n========================\n\nIt's a pretty typical zc.buildout setup::\n\n $ python bootstrap.py\n $ bin/buildout\n\n $ bin/pkginfo --help\n\n\nChangelog\n=========\n\n0.1.0 (2013-03-02)\n------------------\n\n- Initial release.", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "UNKNOWN", "keywords": null, "license": "UNKNOWN", "maintainer": null, "maintainer_email": null, "name": "pkgsync", "package_url": "https://pypi.org/project/pkgsync/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/pkgsync/", "project_urls": { "Download": "UNKNOWN", "Homepage": "UNKNOWN" }, "release_url": "https://pypi.org/project/pkgsync/0.1.0/", "requires_dist": null, "requires_python": null, "summary": "Synchronise packages between two python software repositories", "version": "0.1.0" }, "last_serial": 796316, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "ee6fbb8ee50e9b9d1bda8df6428090ca", "sha256": "e3b6e6a8658af93d3489da7faa8311f510a3943df3b333afabb98709282e2908" }, "downloads": -1, "filename": "pkgsync-0.1.0-py2.7.egg", "has_sig": false, "md5_digest": "ee6fbb8ee50e9b9d1bda8df6428090ca", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 29416, "upload_time": "2013-03-02T22:42:52", "url": "https://files.pythonhosted.org/packages/2f/98/15db637649033bf06c074f6a7af729fd7d8993e099762023e3e2f4f3cead/pkgsync-0.1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "c264ffd778c274561842237d6253427a", "sha256": "4c298cbaf44f8eb549fe888d56182df5d4fe0eec4aff0ae426a3ca259473c3fd" }, "downloads": -1, "filename": "pkgsync-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c264ffd778c274561842237d6253427a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9889, "upload_time": "2013-03-02T15:52:53", "url": "https://files.pythonhosted.org/packages/58/dd/80c811567d3d109a71abbab0db779ea517a0c2877b104c283f46705d3553/pkgsync-0.1.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "ee6fbb8ee50e9b9d1bda8df6428090ca", "sha256": "e3b6e6a8658af93d3489da7faa8311f510a3943df3b333afabb98709282e2908" }, "downloads": -1, "filename": "pkgsync-0.1.0-py2.7.egg", "has_sig": false, "md5_digest": "ee6fbb8ee50e9b9d1bda8df6428090ca", "packagetype": "bdist_egg", "python_version": "2.7", "requires_python": null, "size": 29416, "upload_time": "2013-03-02T22:42:52", "url": "https://files.pythonhosted.org/packages/2f/98/15db637649033bf06c074f6a7af729fd7d8993e099762023e3e2f4f3cead/pkgsync-0.1.0-py2.7.egg" }, { "comment_text": "", "digests": { "md5": "c264ffd778c274561842237d6253427a", "sha256": "4c298cbaf44f8eb549fe888d56182df5d4fe0eec4aff0ae426a3ca259473c3fd" }, "downloads": -1, "filename": "pkgsync-0.1.0.tar.gz", "has_sig": false, "md5_digest": "c264ffd778c274561842237d6253427a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9889, "upload_time": "2013-03-02T15:52:53", "url": "https://files.pythonhosted.org/packages/58/dd/80c811567d3d109a71abbab0db779ea517a0c2877b104c283f46705d3553/pkgsync-0.1.0.tar.gz" } ] }