Ocata - Stadium 健康度¶
有关标准的详细信息,请查阅 Stadium 文档。
达到最低标准¶
Neutron 集成¶
Neutron 集成的最基本标准是采用 neutron-lib,并进行定期检查。今后,项目团队必须展示迁移到 neutron-lib 导入的 100% 的步骤。在构建网络组件时,架构和设计决策中不得存在任何红旗。需要在 neutron-lib 仓库中提供 API 定义和参考文档。
验收测试¶
检查 Grafana 仪表板是否正确显示定期作业,以及定期输出中的工件是否显示至少一次成功的运行。
评估¶
networking-bagpipe: 正常。
networking-odl: 正常。
networking-bgpvpn: 正常。
networking-midonet: 正常。
neutron-dynamic-routing: 正常。
neutron-fwaas: 正常。
networking-ovn: 正常。
networking-sfc: 正常。
文档¶
文档(开发者、部署者和最终用户所需)、发行说明和 API 参考(如果适用)。
验收测试¶
检查文档的有效链接。检查最新发行版(Newton)的发行说明的有效链接。检查 API 参考的有效链接。
评估¶
networking-bagpipe: 正常。
networking-odl: 正常。
networking-bgpvpn: 需要 API 文档。
networking-midonet: 需要 API 文档。
neutron-dynamic-routing: 需要 API 文档。
neutron-fwaas: 正常。
networking-ovn: 正常。
networking-sfc: 需要 API 文档。
持续集成¶
必须提供 Grafana 仪表板;单元(py2x 和 py3x)和 tempest(API 和场景)作业必须进行门控并稳定。这意味着跳过基本网络测试的正则表达式将不被容忍。对于具有数据库迁移的项目,必须提供同步测试。
验收测试¶
检查 Grafana 仪表板是否存在。检查单元测试是否通过。检查门控 tempest 测试。检查场景测试。检查数据库迁移测试。
评估¶
networking-bagpipe: 正常。
networking-odl: 正常。
networking-bgpvpn: 正常。
networking-midonet: 正常。
neutron-dynamic-routing: 需要场景测试。需要数据库/同步验证。
neutron-fwaas: 正常。
networking-ovn: 正常。
networking-sfc: 正常。
发行足迹¶
Semver、上限约束和机器人提案集成是必须的。发布 tarball 和发行说明必须在 releases.openstack.org 上可用。对于每个受支持的发行版,应该至少有一个已发布的交付成果。
验收测试¶
查找在 releases.openstack.org 上可用的 tarball 和发行说明链接。检查版本。检查需求仓库中的项目是否存在。检查是否使用上限约束。
https://github.com/openstack/requirements/blob/master/projects.txt
http://codesearch.openstack.org/?q=UPPER_CONSTRAINTS_FILE&i=nope&files=&repos=
评估¶
networking-bagpipe: 正常。
networking-odl: 正常。
networking-bgpvpn: 正常。
networking-midonet: 正常。
neutron-dynamic-routing: 正常。
neutron-fwaas: 正常。
networking-ovn: 正常。
networking-sfc: 正常。
稳定的回溯¶
与 neutron 分支对齐的稳定分支是必须的。
验收测试¶
检查支持的稳定分支(mitaka 和 newton)。检查 tox_install.sh 是否固定到正确的分支。
http://git.openstack.org/cgit/openstack/<project-name>/?h=stable%2Fnewton
http://codesearch.openstack.org/?q=tox_install.sh&i=nope&files=&repos=
评估¶
networking-bagpipe: 正常。
networking-odl: 正常。
networking-bgpvpn: 正常。
networking-midonet: 正常。
neutron-dynamic-routing: 正常。
neutron-fwaas: 正常。
networking-ovn: 正常。
networking-sfc: 正常。
客户端库¶
对于需要客户端扩展的项目,必须存在 OSC 绑定。
验收测试¶
检查 python-neutronclient 中是否存在 OSC 绑定。
https://github.com/openstack/python-neutronclient/tree/master/neutronclient/osc/v2
https://github.com/openstack/python-neutronclient/blob/master/setup.cfg
评估¶
networking-bagpipe: 不适用。
networking-odl: 不适用。
networking-bgpvpn: 需要移植到 python-neutronclient。
networking-midonet: 需要移植到 python-neutronclient。
neutron-dynamic-routing: 需要移植到 python-neutronclient。
neutron-fwaas: 正常。
networking-ovn: 不适用。
networking-sfc: 需要移植到 python-neutronclient。
总结¶
项目 |
||||||
|---|---|---|---|---|---|---|
已满足 |
已满足 |
已满足 |
已满足 |
已满足 |
N/A |
|
已满足 |
已满足 |
已满足 |
已满足 |
已满足 |
N/A |
|
已满足 |
需要改进 |
已满足 |
已满足 |
已满足 |
需要改进 |
|
已满足 |
需要改进 |
已满足 |
已满足 |
已满足 |
需要改进 |
|
已满足 |
需要改进 |
需要改进 |
已满足 |
已满足 |
需要改进 |
|
已满足 |
已满足 |
已满足 |
已满足 |
已满足 |
已满足 |
|
已满足 |
已满足 |
已满足 |
已满足 |
已满足 |
N/A |
|
已满足 |
需要改进 |
已满足 |
已满足 |
已满足 |
需要改进 |
|
neutron-vpnaas (*) |
已满足 |
需要改进 |
需要改进 |
已满足 |
需要改进 |
需要改进 |
networking-l2gw (*) |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
N/A |
|
networking-onos (*) |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
需要改进 |
N/A |
(*) 要重新申请在 Pike 或未来版本中的包含资格。
仪表盘¶
如何协调 API 和客户端绑定¶
Stadium 演进工作的一个关键步骤是将 API 定义/文档和客户端绑定整合到 neutron-lib 和 python-neutronclient 中。如果满足所有标准,并且未解决的标准是文档和 CLI,那么很明显,为了端到端地完成工作并使项目保持在 neutron 治理中,项目团队需要贡献 API 定义、其 API 参考文档和客户端绑定到 neutron-lib 和 python-neutronclient 中。
为了解决这个需求,请按照以下步骤操作
提出一个包含 API 定义和 API 文档的 neutron-lib 补丁。使用主题 ‘stadium-implosion’。您可以将 API 定义和 API 参考分解为单独的补丁,但这会延长合并过程。如果您将其分解,请对这两个补丁使用相同的主题。
提出一个包含 OSC 命令、CLI 文档以及 API 绑定的 python-neutronclient 补丁。使用上述提示的主题 ‘stadium-implosion’。使客户端补丁依赖于 neutron-lib 补丁,反之则不行。这是因为,如果 API 补丁因任何原因崩溃,我们不需要在客户端发布之前回滚客户端补丁。
一旦所有未解决的 ‘stadium-implosion’ 补丁合并,将要剪切 neutron-lib 和 python-neutronclient 的新版本。此时,当 Bot Proposal 更改合并时,API 定义就可以在子项目中使用了,这标志着 Ocata 的 Stadium 工作完成。
注意:这些补丁的合并取决于确认已解决所有未解决的工作,但审查仍将继续进行。