手榴弹升级测试 - 第一阶段

https://blueprints.launchpad.net/ceilometer/+spec/grenade-upgrade-testing

集成项目需要参与 grenade 升级测试框架。Ceilometer 在这些要求添加之前就已经集成了,但这些要求具有追溯力。因此,Ceilometer 必须被添加到该框架中。

问题描述

使用 grenade 进行测试包括

  • 安装旧版本的基本 DevStack,并通过 smoke 和 scenario tempest 测试进行确认。

  • 建立一个 javelin 项目,该项目对项目中的资源做出断言。

  • 关闭原始安装,升级到新版本的代码,但不升级配置,应用相关的数据库迁移来更新模式,并重复 tempest 测试。

  • 再次测试 javelin 项目,以断言升级过程中资源的完整性。

本文档考虑了升级和 tempest 测试,但不考虑 javelin 测试。Javelin 将在另一份(即将发布)文档中解决。

在 Juno 周期之前,Ceilometer 既不是 DevStack 中的默认服务,也不是在 tempest 中启用的。必须更改相关配置才能允许在 Grenade 中进行测试。

提议的变更

在 Grenade 中启用 Ceilometer(有关详细信息,请参阅工作项)。

替代方案

鉴于对 Grenade 的承诺和项目毕业要求,这是正确的方向。

数据模型影响

无。

REST API 影响

无。

安全影响

无。

Pipeline 影响

无。

其他最终用户影响

这些更改将意味着对最终用户来说,升级体验会更加积极。

性能/可扩展性影响

一直以来,人们担心在 gate 中运行 Ceilometer 会对 gate 的性能产生负面影响。过去确实如此,但 sqlalchemy 驱动程序和数据库模式的最新更改表明,Ceilometer 可以被启用。

其他部署影响

开发者影响

积极的测试意味着会发现需要有人修复的错误。

实现

负责人

谁在编写代码?或者这是一个蓝图,您正在将其抛出以查看谁会接受它?

如果有多个人正在进行实现,请指定主要作者和联系人。

主要负责人

emilienm

其他贡献者

vrovachev dbelova

持续维护者

chdent

工作项

  • grenade.sh 中添加升级调用。

  • 将 Ceilometer 升级脚本添加到 grenade。

  • 将 Ceilometer 目录添加到 grenade 清理程序。

  • 确保在升级之间转储 Ceilometer 数据。

注意:这些工作项被捕获在一个 待处理的补丁集中

未来生命周期

随着 Ceilometer 扩展到包含其他服务,有必要调整 devstack 和 grenade 来管理(停止、启动、清理)这些服务。

依赖项

除了上述列出的之外,没有其他依赖项。

测试

这些更改将改进测试,并在那里进行验证。

文档影响

无。

参考资料

无。