Openstack keystone setup.py和setup.cfg的解析

本文解析OpenStack Keystone项目中的setup.py和setup.cfg文件,它们用于控制Python项目的打包和安装。setup.py包括sdist、bdist等命令,而setup.cfg提供默认参数。此外,介绍了PBR如何处理setup.cfg内容,以及Babel在项目国际化中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在每个openstack项目中,都有setup.pysetup.cfg这两个文件。那setup.pysetup.cfg是什么?如何使用?以keystone项目为例,进行实践和解析。

简单的说,setup.pysetup.cfg是控制python项目打包、安装的工具类。

Setup.py

我们从一个简单的例子开始。假设要分发一个叫foo的模块,文件名foo.py,那么setup.py的内容如下:

fromdistutils.core import setup

setup(name='foo',version='1.0',py_modules=['foo'],)


然后,运行pythonsetup.py sdist为模块创建一个源码包。

stack@liujunpeng-Inspur-Computer:~/python_setup$python setup.py sdist

runningsdist

runningcheck

warning:check: missing required meta-data: url

warning:check: missing meta-data: either (author and author_email) or(maintainer and maintainer_email) must be supplied

warning:sdist: manifest template 'MANIFEST.in' does not exist (usingdefault file list)

warning:sdist: standard file not found: should have one of README,README.txt

writingmanifest file 'MANIFEST'

creatingfoo-1.0

makinghard links in foo-1.0...

hardlinking foo.py -> foo-1.0

hardlinking setup.py -> foo-1.0

Creatingtar archive

removing'foo-1.0' (and everything under it)


在当前目录下,会创建dist目录,里面有个文件名为foo-1.0.tar.gz,这个就是可以分发的包。使用者,把该包解压,然后执行

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值