4e47c03396
Adds objects for Consumer, Project, and User data models, in their own files. They do not contain logic that comes from the API microversions and are meant to be plain-old-data objects that represent the current schema in the database. Project, user and consumer information all are stored in separate tables in the DB and represent actual things in the placement data modeling. Giving them actual objects makes that consistent with the other objects in the data model, including resource providers, allocations, inventories, resource classes and traits. The patch modifies the allocation handler to always ensure that a consumer record exists for the supplied consumer UUID and an associated projects and users table record exists for that consumer. If an allocation is created using API microversion <1.8, which doesn't supply the project or user for the consumer, we use the value of two new CONF options that indicate the project and user ID for incomplete consumer records. Includes an online data migration for the nova-manage online_data_migrations command that creates consumer records for incomplete consumers. Change-Id: Id609789ef6b4a4c745550cde80dd49cabe03869a
12 lines
620 B
YAML
12 lines
620 B
YAML
---
|
|
features:
|
|
- |
|
|
Prior to microversion 1.8 of the placement API, one could create
|
|
allocations and not supply a project or user ID for the consumer of the
|
|
allocated resources. While this is no longer allowed after placement API
|
|
1.8, older allocations exist and we now ensure that a consumer record is
|
|
created for these older allocations. Use the two new CONF options
|
|
``CONF.placement.incomplete_consumer_project_id`` and
|
|
``CONF.placement.incomplete_consumer_user_id`` to control the project and
|
|
user identifiers that are written for these incomplete consumer records.
|