Grenade Upgrade Testing - Phase 1¶
Integrated projects are required to participate in the grenade upgrade testing harness. Ceilometer was integrated before these requirements were added but the requirements apply retroactively. Therefore, ceilometer must be added to the harness.
Testing with grenade involves:
Installing a basic DevStack of the old version, confirming it with smoke and scenario tempest tests.
Establishing a javelin project which makes assertions about resources in the project.
Shutting down the original installation, upgrading to the new version of the code but not configuration, applying the relevant database migrations to update the schema, and repeating the tempest tests.
Testing the javelin project again to assert the integrity of resources across the upgrade.
This document considers the upgrade and tempest testing but not the javelin testing. Javelin will be addressed in another (forthcoming) document.
Prior to the Juno cycle ceilometer was neither a default service in DevStack nor enabled in tempest. The relevant configuration must be changed to allow testing in Grenade.
Enable ceilometer in Grenade (see Work Items for details).
Given the commitment to Grenade and the project graduation requirements, this is the way to go.
Data model impact¶
REST API impact¶
Other end user impact¶
These changes will mean a more positive upgrade experience for end users.
There have been concerns that running ceilometer in the gate will negatively impact performance there. This had been true but recent changes in the sqlalchemy driver and database schema have shown enough improvement that ceilometer can be turned on.
Other deployer impact¶
Active testing will mean the discovery of bugs that someone will have to fix.
Who is leading the writing of the code? Or is this a blueprint where you’re throwing it out there to see who picks it up?
If more than one person is working on the implementation, please designate the primary author and contact.
- Primary assignee:
- Other contributors:
- Ongoing maintainer:
Add upgrade calls to
Add ceilometer upgrade scripts to grenade.
Add ceilometer directories to grenade cleanup procedures.
Ensure ceilometer data dumped between upgrades.
Note: These work items are captured in a pending patchset
As/when ceilometer expands to include additional services, it will be necessary to adjust devstack and grenade to manage (stop, start, cleanup) those services.
Other than those listed above, no additional dependencies.
These changes improve testing and will be validated there.