placement/releasenotes/notes/placement-incomplete-consumer-configuration-b775dac1bcd34f9d.yaml
Jay Pipes 4e47c03396 placement: always create consumer records
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
2018-06-11 12:45:41 -04:00

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.