跳转到主要内容

在两个Python软件仓库之间同步软件包

项目描述

概述

pkgsync 是一个用于将Python软件包从一个仓库移动到另一个仓库的工具。例如,假设您使用pypi-clone应用程序(如chishop)并希望将某些软件包从PyPI同步到其中,或者您有多个PyPI克隆应用程序等。

这确保了如果A仓库中某些软件包的版本尚未存在于B仓库中,则将其复制到B仓库。

优点

pkgsync 特别有用,因为它使用 pkginfo 来内省软件包,因此您不需要

$ tar zxf something-1.2.3.tar.gz
$ cd something-1.2.3/
$ python setup.py sdist register upload -r privaterepo

这有缺陷,因为它运行缓慢,并且经常显示人们错误打包软件的问题,缺少MANIFEST.in文件等,加上日期改变,md5sums改变……总之很乱。使用pkgsync要少一些。

受密码保护的仓库

支持上传和下载认证,以防您有受密码保护的私有仓库需要从中/到中复制。

旧式软件包

非常原始地支持旧式软件包 - 没有任何setuptools元数据的软件包。对于这些软件包,我们尝试使用文件名来确定软件包名称和版本,然后使用所有其他setuptools元数据的值‘未知’来注册软件包(如规范所述)。

使用方法

默认的 --source-urlhttp://pypi.python.org,因为这可能符合您的用例。

如果提供了 --destination-username 且未提供 --destination-password,您将被提示输入密码。

通过执行 pkgsync --help 可以获得完整的命令行选项文档。

示例用法

pkgsync --destination-url=https://eggsample.com --destination-username=youruser tzinfo Django celery

完整仓库同步

pkgsync --source-url=https://eggsample.com --destination-url=https://newrepo.com --destination-username=youruser --all

开发说明

这是一个相当典型的zc.buildout设置

$ python bootstrap.py
$ bin/buildout

$ bin/pkginfo --help

变更日志

0.1.0 (2013-03-02)

  • 初始发布。

项目详情


下载文件

下载您平台对应的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码发行版

pkgsync-0.1.0.tar.gz (9.9 kB 查看哈希值)

上传时间 源代码

构建发行版

pkgsync-0.1.0-py2.7.egg (29.4 kB 查看哈希值)

上传时间 源代码

支持者