在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
上一篇: 计算奇偶和取余的快速操作
下一篇: 写了一个二维泊松圆盘采样的c语言程序
0 Responses so far.