文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
4.2 使用 pbr 打包
现在我已经用了好几页让你对如此多的分发工具更加迷糊,接下来让我们谈谈另一个工具,也是一个不同的选择,名为pbr。
你可能已经开发过一些包并试图去写setup.py,或者从其他项目复制一个,或者自己啃文档。这不是一个清晰明确的任务,如同我们在前面讨论过的,选择什么工具通常是第一个障碍。本节将介绍pbr,一个应该用来开发你的下一个setup.py的工具,以便你不用再在这部分浪费时间。
pbr是指Python Build Reasonableness。这个项目已经在OpenStack(http://openstack.org)内部启动,并围绕setuptools开发了一系列用来辅助包的安装和部署的工具。它从distutils2获得了灵感,利用setup.cfg文件来描述包的用途。
pbr使用的setup.py文件类似下面这样:
import setuptools setuptools.setup(setup_requires=['pbr'], pbr=True)
就两行代码,非常简单。实际上安装所需要的元数据存储在setup.cfg文件中:
[metadata] name = foobar author = Dave Null author-email = foobar@example.org summary = Package doing nifty stuff license = MIT description-file = README.rst home-page = http://pypi.python.org/pypi/foobar requires-python = >=2.6 classifier = Development Status :: 4 - Beta Environment :: Console Intended Audience :: Developers Intended Audience :: Information Technology License :: OSI Approved :: Apache Software License Operating System :: OS Independent Programming Language :: Python [files] packages = foobar
看着眼熟?没错,处理的方式都是直接受distutils2的启发。
pbr还提供了其他一些功能,例如:
· 基于requirements.txt做自动依赖安装;
· 利用Sphinx实现文档自动化;
· 基于git history自动生成AUTHORS和ChangeLog文件;
· 针对git自动创建文件列表;
· 基于git tags的版本管理。
所有这些对开发人员来说只有一点儿或完全没有任何额外工作要做。pbr目前维护良好并且开发很活跃,所以如果计划分发软件的话,应该认真考虑一下使用pbr。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论