Flavor extra spec and image properties validation

Registered by Jack Ding on 2018-10-31

Validate the combination of the flavor extra-specs and image properties as early as possible once they're both known (since you can specify mutually-incompatible changes in the two places). If validation failed then synchronously return error to user. We'd need to do this anywhere the flavor or image changes, so basically instance creation, rebuild, and resize.

Blueprint information

Status:
Complete
Approver:
Sylvain Bauza
Priority:
Low
Drafter:
Jack Ding
Direction:
Approved
Assignee:
Jack Ding
Definition:
Approved
Series goal:
Accepted for stein
Implementation:
Implemented
Milestone target:
milestone icon stein-3
Started by
melanie witt on 2019-02-15
Completed by
Matt Riedemann on 2019-03-06

Related branches

Sprints

Whiteboard

Notes from the Stein PTG discussion about this:
https://etherpad.openstack.org/p/nova-ptg-stein

Flavor extra spec and image properties validation
- ensure that the combination of flavor extra-specs and image properties makes sense, if not then synchronously return error to user
- StarlingX just validated the flavor extra-specs, but there was previously talk of validating the combo of flavor/image a bit further down the stack once we know both of them.
- would need to validate any time either the flavor or image changed--boot/rebuild/resize
--There's a related issue wrt how we determine which of image extra specs/flavor metadata take priority. It's all over the shop right now
- Caveat: this does depend on the virt driver to be maximally robust. But there are things that don't require driver-specific knowledge that we could do without calling down to the driver.
- Wouldn't it be simplest to start by having flavor extra spec schema validation in the API for *known* extra specs, but with additionalProperties=True for out of tree stuff.
- AGREE: validate what we can that is not driver-specific

Gerrit topic: https://review.openstack.org/#q,topic:bp/flavor-extra-spec-image-property-validation,n,z

Addressed by: https://review.openstack.org/618542
    Flavor Extra Spec and Image Properties Validation

Addressed by: https://review.openstack.org/629311
    Fix format flavor-extra-spec-image-property-validation

Addressed by: https://review.openstack.org/620706
    Flavor extra spec and image properties validation

Related topics:
This bug deals with similar issues:
https://bugs.launchpad.net/nova/+bug/1628504, "Exception handling for cpu_policy and cpu_thread_policy image and flavor metadata is inconsistent"

Spec merged on 2019-01-08, approved for Stein. -- melwitt 20190109

Addressed by: https://review.openstack.org/638734
    Add 'flavor-extra-spec-image-property-validation' spec

Addressed by: https://review.openstack.org/640733
    WIP: Add initial version of metadata configuration

Addressed by: https://review.openstack.org/640841
    Improve existing flavor and image metadata validation

Addressed by: https://review.openstack.org/641131
    Validate PCI aliases early in resize

Gerrit topic: https://review.openstack.org/#/q/topic:bp/flavor-extra-spec-image-property-validation

Gerrit topic: https://review.opendev.org/#/q/topic:bp/flavor-extra-spec-image-property-validation

Addressed by: https://review.opendev.org/638734
    Add 'flavor-extra-spec-image-property-validation-extended' spec

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.