nova/nova/api/openstack/placement
Jay Pipes 03d80cf0de 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
..
handlers placement: always create consumer records 2018-06-11 12:45:41 -04:00
objects placement: always create consumer records 2018-06-11 12:45:41 -04:00
policies Add granular policy rules for allocation candidates 2018-05-26 12:54:51 -04:00
schemas placement: Granular GET /allocation_candidates 2018-05-08 11:54:30 -05:00
__init__.py Add initial framing of placement API 2016-07-29 10:31:36 +00:00
auth.py Implement granular policy rules for placement 2018-05-17 11:12:16 -04:00
context.py Follow up changes to granular placement policy reviews 2018-05-26 12:54:54 -04:00
deploy.py Use microversion parse 0.2.1 2018-03-23 12:09:17 +00:00
errors.py Provide framework for setting placement error codes 2018-04-14 13:45:54 +01:00
exception.py placement: always create consumer records 2018-06-11 12:45:41 -04:00
fault_wrap.py [placement] use simple FaultWrapper 2018-02-28 20:34:12 +00:00
handler.py Add granular policy rules for allocation candidates 2018-05-26 12:54:51 -04:00
lib.py __str__ methods for RequestGroup, ResourceRequest 2018-05-14 14:56:12 -05:00
microversion.py Return all resources in provider_summaries 2018-05-29 03:16:13 +09:00
policy.py Follow up changes to granular placement policy reviews 2018-05-26 12:54:54 -04:00
requestlog.py [placement] default to accept of application/json when */* 2018-05-15 16:55:42 +01:00
rest_api_version_history.rst Return all resources in provider_summaries 2018-05-29 03:16:13 +09:00
util.py placement: always create consumer records 2018-06-11 12:45:41 -04:00
wsgi.py [placement] Do not import oslo_service for log_options 2018-06-05 05:10:07 +00:00
wsgi_wrapper.py Provide framework for setting placement error codes 2018-04-14 13:45:54 +01:00