在setup.py里只需要写很少的代码,所有配置都放在setup.cfg里。如果参数通过setup()传入,以setup.cfg里的配置为准

#!/usr/bin/env python

from setuptools import setup

setup(
setup_requires=['pbr'],
pbr=True,
)

setup.cfg里配置跟ini文件差不多。
[files]定义代码包里文件的安装目录,其中packages指定要安装的包;namespace_packages制定有命名空间的包;data_files指定要安装的文件的源地址和目的地址;

[entry_points]指定模块入口点的运行脚本和模块。主要定义一些控制台脚本,pbr会自动生成这些脚本,做到脚本的跨平台。等号后边就相当于脚本执行调用的函数
随便看了两眼pbr源码:
console_scripts就是两行,先import,后执行。
wsgi_scripts比较多,从代码来看,可以直接当脚本启动一个server或者,返回一个app提供给wsgi调用

知道了这个,基本就了解openstack一些模块入口函数怎么找了
看了看neutron service启动命令为
/usr/bin/neutron-server --config-file /etc/neutron/neutron.conf --config-file /etc/neutron/plugin.ini
neutron-server脚本在console_scripts里定义。

openstack rpm包打包项目https://github.com/openstack/rpm-packaging

上一篇:
下一篇:

相关文章:

Categories: 博客记录

0 Responses so far.

Leave a Reply