2017-11-20 22:33:39 +09:00
|
|
|
# variables in header
|
|
|
|
location:
|
|
|
|
description: |
|
|
|
|
The location URL of the resource created,
|
|
|
|
HTTP header "Location: <Location URL>" will be returned.
|
|
|
|
in: header
|
|
|
|
required: true
|
|
|
|
type: string
|
|
|
|
|
2017-03-24 20:47:41 +03:00
|
|
|
# variables in path
|
2017-09-01 15:16:22 +01:00
|
|
|
consumer_uuid: &consumer_uuid
|
2017-06-26 14:27:49 +03:00
|
|
|
type: string
|
|
|
|
in: path
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The uuid of a consumer.
|
2017-04-10 12:34:00 +03:00
|
|
|
resource_class_path: &resource_class_path
|
|
|
|
type: string
|
|
|
|
in: path
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The name of one resource class.
|
2017-11-20 20:03:20 +09:00
|
|
|
resource_class_path_custom: &resource_class_path_custom
|
|
|
|
type: string
|
|
|
|
in: path
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The name of one resource class. The name must start with
|
|
|
|
the prefix ``CUSTOM_``. If not, the request returns a ``Bad Request (400)``
|
|
|
|
response code.
|
2017-03-24 20:47:41 +03:00
|
|
|
resource_provider_uuid_path: &resource_provider_uuid_path
|
|
|
|
type: string
|
|
|
|
in: path
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The uuid of a resource provider.
|
2017-06-14 14:41:33 +03:00
|
|
|
trait_name:
|
|
|
|
type: string
|
|
|
|
in: path
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The name of a trait.
|
2017-03-24 20:47:41 +03:00
|
|
|
|
|
|
|
# variables in query
|
2018-04-25 16:55:58 -05:00
|
|
|
allocation_candidates_group_policy:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
min_version: 1.25
|
|
|
|
description: >
|
|
|
|
When more than one ``resourcesN`` query parameter is supplied,
|
|
|
|
``group_policy`` is required to indicate how the groups should interact.
|
|
|
|
With ``group_policy=none``, separate groupings - numbered or unnumbered -
|
|
|
|
may or may not be satisfied by the same provider. With
|
|
|
|
``group_policy=isolate``, numbered groups are guaranteed to be satisfied by
|
|
|
|
*different* providers - though there may still be overlap with the
|
|
|
|
unnumbered group.
|
[placement] Enable limiting GET /allocation_candidates
This adds a limit query parameter to GET
/allocation_candidates?limit=5&resource=VCPU:1
A 'limit' filter is added to the AllocationCandidates. If set, after
the database query has been run to create the allocation requests and
provider summaries, a slice or sample of the allocation requests is
taken to limit the results. The summaries are then filtered to only
include those in the allocation requests.
This method avoids needing to make changes to the generated SQL, the
creation of which is fairly complex, or the database tables. The amount
of data queried is still high in the extreme case, but the amount of
data sent over the wire (as JSON) is shrunk. This is a trade-off that
was discussed in the spec and the discussion surrounding its review.
If it turns out that memory use server-side is an issue we can
investigate changing the SQL.
A configuration setting, [placement]/randomize_allocation_candidates,
is added to allow deployers to declare whether they want the results
to be returned in whatever order the database chooses or a random
order. The default is "False" which is expected to preserve existing
behavior and impose a packing placement strategy.
When the config setting is combined with the limit parameter, if
"True" the limited results are a random sampling from the full
results. If "False", it is a slice from the front.
This is done as a new microversion, 1.16, with updates to docs, a reno
and adjustments to the api history doc.
Change-Id: I5f3d4f49c34fd3cd6b9d2e12b3c3c4cdcb409bec
Implements: bp allocation-candidates-limit
2017-11-19 12:09:38 +00:00
|
|
|
allocation_candidates_limit:
|
|
|
|
type: integer
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
min_version: 1.16
|
|
|
|
description: >
|
|
|
|
A positive integer used to limit the maximum number of allocation
|
|
|
|
candidates returned in the response.
|
2018-03-19 20:07:12 +00:00
|
|
|
member_of: &member_of
|
2017-01-10 17:33:13 +00:00
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
2017-11-17 20:02:40 -06:00
|
|
|
A string representing an aggregate uuid; or the prefix ``in:`` followed by
|
|
|
|
a comma-separated list of strings representing aggregate uuids. The
|
|
|
|
returned resource providers must be associated with at least one of the
|
|
|
|
aggregates identified by uuid::
|
|
|
|
|
|
|
|
member_of=5e08ea53-c4c6-448e-9334-ac4953de3cfa
|
|
|
|
member_of=in:42896e0d-205d-4fe3-bd1e-100924931787,5e08ea53-c4c6-448e-9334-ac4953de3cfa
|
2018-04-13 15:43:03 -04:00
|
|
|
|
|
|
|
**Starting from microversion 1.24** specifying multiple ``member_of`` query
|
|
|
|
string parameters is possible. Multiple ``member_of`` parameters will
|
|
|
|
result in filtering providers that are associated with aggregates listed in
|
|
|
|
all of the ``member_of`` query string values. For example, to get the
|
|
|
|
providers that are associated with aggregate A as well as associated with
|
|
|
|
any of aggregates B or C, the user could issue the following query::
|
|
|
|
|
|
|
|
member_of=AGGA_UUID&member_of=in:AGGB_UUID,AGGC_UUID
|
2017-09-08 16:02:27 -04:00
|
|
|
min_version: 1.3
|
2018-03-19 20:07:12 +00:00
|
|
|
member_of_1_21:
|
|
|
|
<<: *member_of
|
|
|
|
min_version: 1.21
|
2018-04-25 16:55:58 -05:00
|
|
|
member_of_granular:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
A string representing an aggregate uuid; or the prefix ``in:`` followed by
|
|
|
|
a comma-separated list of strings representing aggregate uuids. The
|
|
|
|
returned resource providers must be associated with at least one of the
|
|
|
|
aggregates identified by uuid. The parameter key is ``member_ofN``, where
|
|
|
|
``N`` represents a positive integer suffix corresponding with a
|
|
|
|
``resourcesN`` parameter. The value format is the same as for the
|
|
|
|
(unnumbered) ``member_of`` parameter; but all of the resources and traits
|
|
|
|
specified in a numbered grouping will always be satisfied by the same
|
|
|
|
resource provider. Separate groupings - numbered or unnumbered - may or may
|
|
|
|
not be satisfied by the same provider, depending on the value of the
|
|
|
|
``group_policy`` parameter.
|
|
|
|
|
|
|
|
It is an error to specify a ``member_ofN`` parameter without a
|
|
|
|
corresponding ``resourcesN`` parameter with the same suffix.
|
|
|
|
min_version: 1.25
|
2017-06-26 14:27:49 +03:00
|
|
|
project_id: &project_id
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The uuid of a project.
|
2018-04-25 16:55:58 -05:00
|
|
|
required_traits_granular:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: |
|
|
|
|
A comma-separated list of traits that a provider must have, or (if prefixed
|
|
|
|
with a ``!``) **not** have::
|
|
|
|
|
|
|
|
required42=HW_CPU_X86_AVX,HW_CPU_X86_SSE,!HW_CPU_X86_AVX2
|
|
|
|
|
|
|
|
The parameter key is ``requiredN``, where ``N`` represents a
|
|
|
|
positive integer suffix corresponding with a ``resourcesN`` parameter.
|
|
|
|
The value format is the same as for the (unnumbered) ``required``
|
|
|
|
parameter; but all of the resources and traits specified in a numbered
|
|
|
|
grouping will always be satisfied by the same resource provider. Separate
|
|
|
|
groupings - numbered or unnumbered - may or may not be satisfied by the
|
|
|
|
same provider, depending on the value of the ``group_policy`` parameter.
|
|
|
|
|
|
|
|
It is an error to specify a ``requiredN`` parameter without a corresponding
|
|
|
|
``resourcesN`` parameter with the same suffix.
|
|
|
|
min_version: 1.25
|
|
|
|
required_traits_unnumbered:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
min_version: 1.17
|
|
|
|
description: |
|
|
|
|
A comma-separated list of traits that a provider must have::
|
|
|
|
|
|
|
|
required=HW_CPU_X86_AVX,HW_CPU_X86_SSE
|
|
|
|
|
|
|
|
Allocation requests in the response will be for resource providers that
|
|
|
|
have capacity for all requested resources and the set of those resource
|
|
|
|
providers will *collectively* contain all of the required traits. These
|
|
|
|
traits may be satisfied by any provider in the same non-sharing tree or
|
|
|
|
associated via aggregate. **Starting from microversion 1.22** traits which
|
|
|
|
are forbidden from any resource provider may be expressed by prefixing a
|
|
|
|
trait with a ``!``.
|
2017-01-10 17:33:13 +00:00
|
|
|
resource_provider_name_query:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
The name of a resource provider to filter the list.
|
2018-02-21 19:33:33 -06:00
|
|
|
resource_provider_required_query:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
A comma-delimited list of string trait names. Results will be filtered to
|
2018-03-27 11:31:13 +01:00
|
|
|
include only resource providers having all the specified traits. **Starting
|
|
|
|
from microversion 1.22** traits which are forbidden from any resource
|
|
|
|
provider may be expressed by prefixing a trait with a ``!``.
|
2018-02-21 19:33:33 -06:00
|
|
|
min_version: 1.18
|
2017-07-06 09:32:49 +01:00
|
|
|
resource_provider_tree_query:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
A UUID of a resource provider. The returned resource providers will be in
|
|
|
|
the same "provider tree" as the specified provider.
|
|
|
|
min_version: 1.14
|
2017-01-10 17:33:13 +00:00
|
|
|
resource_provider_uuid_query:
|
2017-03-24 20:47:41 +03:00
|
|
|
<<: *resource_provider_uuid_path
|
2017-01-10 17:33:13 +00:00
|
|
|
in: query
|
|
|
|
required: false
|
2018-04-25 16:55:58 -05:00
|
|
|
resources_query_1_4:
|
2017-01-10 17:33:13 +00:00
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: |
|
|
|
|
A comma-separated list of strings indicating an amount of
|
|
|
|
resource of a specified class that a provider must have the
|
2018-02-22 10:41:57 -06:00
|
|
|
capacity and availability to serve::
|
2017-01-10 17:33:13 +00:00
|
|
|
|
|
|
|
resources=VCPU:4,DISK_GB:64,MEMORY_MB:2048
|
2017-09-08 16:02:27 -04:00
|
|
|
min_version: 1.4
|
2018-04-25 16:55:58 -05:00
|
|
|
resources_query_ac:
|
2017-09-08 16:02:27 -04:00
|
|
|
type: string
|
|
|
|
in: query
|
2018-04-25 16:55:58 -05:00
|
|
|
required: false
|
2017-09-08 16:02:27 -04:00
|
|
|
description: |
|
|
|
|
A comma-separated list of strings indicating an amount of
|
2018-02-22 10:41:57 -06:00
|
|
|
resource of a specified class that providers in each allocation request
|
|
|
|
must *collectively* have the capacity and availability to serve::
|
2017-09-08 16:02:27 -04:00
|
|
|
|
|
|
|
resources=VCPU:4,DISK_GB:64,MEMORY_MB:2048
|
2018-04-25 16:55:58 -05:00
|
|
|
|
|
|
|
These resources may be satisfied by any provider in the same non-sharing
|
|
|
|
tree or associated via aggregate.
|
|
|
|
resources_query_granular:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: |
|
|
|
|
A comma-separated list of strings indicating an amount of
|
|
|
|
resource of a specified class that a provider must have the
|
|
|
|
capacity to serve::
|
|
|
|
|
|
|
|
resources42=VCPU:4,DISK_GB:64,MEMORY_MB:2048
|
|
|
|
|
|
|
|
The parameter key is ``resourcesN``, where ``N`` represents a unique
|
|
|
|
positive integer suffix. The value format is the same as for the
|
|
|
|
(unnumbered) ``resources`` parameter, but the resources specified in a
|
|
|
|
``resourcesN`` parameter will always be satisfied by a single provider.
|
|
|
|
Separate groupings - numbered or unnumbered - may or may not be satisfied
|
|
|
|
by the same provider depending on the value of the ``group_policy``
|
|
|
|
parameter.
|
|
|
|
min_version: 1.25
|
2017-06-14 14:41:33 +03:00
|
|
|
trait_associated:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
If this parameter has a true value, the returned traits will be
|
|
|
|
those that are associated with at least one resource provider.
|
|
|
|
Available values for the parameter are true and false.
|
|
|
|
trait_name_query:
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: |
|
|
|
|
A string to filter traits. The following options are available:
|
|
|
|
|
2017-08-31 10:27:39 -05:00
|
|
|
`startswith` operator filters the traits whose name begins with a
|
|
|
|
specific prefix, e.g. name=startswith:CUSTOM,
|
2017-06-14 14:41:33 +03:00
|
|
|
|
|
|
|
`in` operator filters the traits whose name is in the specified list, e.g.
|
|
|
|
name=in:HW_CPU_X86_AVX,HW_CPU_X86_SSE,HW_CPU_X86_INVALID_FEATURE.
|
2017-06-26 14:27:49 +03:00
|
|
|
user_id: &user_id
|
|
|
|
type: string
|
|
|
|
in: query
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
The uuid of a user.
|
2017-01-10 17:33:13 +00:00
|
|
|
|
2017-03-24 20:47:41 +03:00
|
|
|
# variables in body
|
2017-06-02 15:43:18 +03:00
|
|
|
aggregates:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of aggregate uuids.
|
2017-04-03 11:30:03 +03:00
|
|
|
allocation_ratio: &allocation_ratio
|
2017-03-24 20:47:41 +03:00
|
|
|
type: float
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: |
|
|
|
|
It is used in determining whether consumption of the resource of
|
|
|
|
the provider can exceed physical constraints.
|
|
|
|
|
|
|
|
For example, for a vCPU resource with::
|
|
|
|
|
|
|
|
allocation_ratio = 16.0
|
|
|
|
total = 8
|
|
|
|
|
|
|
|
Overall capacity is equal to 128 vCPUs.
|
2017-04-03 11:30:03 +03:00
|
|
|
allocation_ratio_opt:
|
|
|
|
<<: *allocation_ratio
|
|
|
|
required: false
|
2017-07-06 15:23:26 +03:00
|
|
|
allocation_requests:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of objects that contain a
|
|
|
|
serialized HTTP body that a client may subsequently use in a call
|
|
|
|
to PUT /allocations/{consumer_uuid} to claim resources against a
|
|
|
|
related set of resource providers.
|
2017-06-26 14:27:49 +03:00
|
|
|
allocations_array:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of dictionaries.
|
|
|
|
allocations_by_resource_provider:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A dictionary of allocations keyed by resource provider uuid.
|
2017-09-01 15:16:22 +01:00
|
|
|
allocations_dict: &allocations_dict
|
2017-10-16 21:27:40 +01:00
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A dictionary of resource allocations keyed by resource provider uuid.
|
2017-09-01 15:16:22 +01:00
|
|
|
allocations_dict_empty:
|
|
|
|
<<: *allocations_dict
|
|
|
|
description: >
|
|
|
|
A dictionary of resource allocations keyed by resource provider uuid.
|
|
|
|
If this is an empty object, allocations for this consumer will be
|
|
|
|
removed.
|
|
|
|
min_version: null
|
2017-07-06 15:23:26 +03:00
|
|
|
capacity:
|
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The amount of the resource that the provider can accommodate.
|
2018-05-01 18:38:15 -04:00
|
|
|
consumer_generation:
|
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
min_version: 1.28
|
|
|
|
description: >
|
|
|
|
The generation of the consumer. Should be set to ``None`` when indicating
|
|
|
|
the the caller expects the consumer does not yet exist.
|
2017-09-01 15:16:22 +01:00
|
|
|
consumer_uuid_body:
|
|
|
|
<<: *consumer_uuid
|
|
|
|
in: body
|
2017-03-24 20:47:41 +03:00
|
|
|
inventories:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A dictionary of inventories keyed by resource classes.
|
|
|
|
max_unit: &max_unit
|
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A maximum amount any single allocation against an inventory can have.
|
2017-04-03 11:30:03 +03:00
|
|
|
max_unit_opt:
|
|
|
|
<<: *max_unit
|
|
|
|
required: false
|
|
|
|
min_unit: &min_unit
|
2017-03-24 20:47:41 +03:00
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A minimum amount any single allocation against an inventory can have.
|
2017-04-03 11:30:03 +03:00
|
|
|
min_unit_opt:
|
|
|
|
<<: *min_unit
|
|
|
|
required: false
|
2017-10-16 21:27:40 +01:00
|
|
|
project_id_body: &project_id_body
|
2017-06-26 14:27:49 +03:00
|
|
|
<<: *project_id
|
|
|
|
in: body
|
2017-10-16 21:27:40 +01:00
|
|
|
project_id_body_1_12:
|
|
|
|
<<: *project_id_body
|
|
|
|
min_version: 1.12
|
|
|
|
project_id_body_1_8:
|
|
|
|
<<: *project_id_body
|
2017-06-26 14:27:49 +03:00
|
|
|
min_version: 1.8
|
2017-07-06 15:23:26 +03:00
|
|
|
provider_summaries:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A dictionary keyed by resource provider UUID,
|
2018-01-19 15:38:26 +08:00
|
|
|
of dictionaries of inventory/capacity information. The list of traits
|
2018-01-24 14:15:56 +08:00
|
|
|
the resource provider has associated with it is included in version `1.17`
|
|
|
|
and above.
|
2017-04-03 11:30:03 +03:00
|
|
|
reserved: &reserved
|
2017-03-24 20:47:41 +03:00
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The amount of the resource a provider has reserved for its own use.
|
2017-04-03 11:30:03 +03:00
|
|
|
reserved_opt:
|
|
|
|
<<: *reserved
|
|
|
|
required: false
|
2017-03-24 20:47:41 +03:00
|
|
|
resource_class:
|
2017-04-10 12:34:00 +03:00
|
|
|
<<: *resource_class_path
|
2017-03-24 20:47:41 +03:00
|
|
|
in: body
|
2017-11-20 20:03:20 +09:00
|
|
|
resource_class_custom:
|
|
|
|
<<: *resource_class_path_custom
|
|
|
|
in: body
|
2017-05-24 14:21:03 +03:00
|
|
|
resource_class_links:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of links associated with one resource class.
|
|
|
|
resource_classes:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of ``resource_class`` objects.
|
2017-06-26 15:30:07 +03:00
|
|
|
resource_provider_allocations:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A dictionary of allocation records keyed by consumer uuid.
|
2017-10-16 21:27:40 +01:00
|
|
|
resource_provider_generation: &resource_provider_generation
|
2017-01-10 17:33:13 +00:00
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A consistent view marker that assists with the management of
|
|
|
|
concurrent resource provider updates.
|
2017-10-16 21:27:40 +01:00
|
|
|
resource_provider_generation_optional:
|
|
|
|
<<: *resource_provider_generation
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
A consistent view marker that assists with the management of
|
|
|
|
concurrent resource provider updates. The value is ignored;
|
|
|
|
it is present to preserve symmetry between read and
|
|
|
|
write representations.
|
2018-02-27 12:29:11 +00:00
|
|
|
resource_provider_generation_v1_19:
|
|
|
|
<<: *resource_provider_generation
|
|
|
|
min_version: 1.19
|
2018-03-01 12:30:37 +00:00
|
|
|
resource_provider_links: &resource_provider_links
|
2017-01-10 17:33:13 +00:00
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
2017-05-24 11:26:59 +03:00
|
|
|
description: |
|
2017-01-10 17:33:13 +00:00
|
|
|
A list of links associated with one resource provider.
|
2017-05-24 11:26:59 +03:00
|
|
|
|
2017-11-20 20:45:24 +09:00
|
|
|
.. note::
|
2017-05-24 11:26:59 +03:00
|
|
|
|
2017-11-20 20:45:24 +09:00
|
|
|
Aggregates relationship link is available starting from version 1.1.
|
|
|
|
Traits relationship link is available starting from version 1.6.
|
|
|
|
Allocations relationship link is available starting from version 1.11.
|
2017-10-27 10:41:15 -05:00
|
|
|
|
2018-03-01 12:30:37 +00:00
|
|
|
resource_provider_links_v1_20:
|
|
|
|
<<: *resource_provider_links
|
|
|
|
description: |
|
|
|
|
A list of links associated with the resource provider.
|
|
|
|
|
2017-01-10 17:33:13 +00:00
|
|
|
resource_provider_name:
|
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The name of one resource provider.
|
2017-06-26 14:27:49 +03:00
|
|
|
resource_provider_object:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
2017-07-06 15:23:26 +03:00
|
|
|
A dictionary which contains the UUID of the resource provider.
|
2017-12-11 11:19:25 +09:00
|
|
|
resource_provider_parent_provider_uuid: &resource_provider_parent_provider_uuid
|
2017-07-06 09:32:49 +01:00
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: false
|
|
|
|
description: >
|
|
|
|
The UUID of the immediate parent of the resource provider.
|
2018-03-01 12:30:37 +00:00
|
|
|
resource_provider_parent_provider_uuid_1_14: &resource_provider_parent_provider_uuid_1_14
|
|
|
|
<<: *resource_provider_parent_provider_uuid
|
2018-06-05 13:44:15 -04:00
|
|
|
description: >
|
|
|
|
The UUID of the immediate parent of the resource provider. Once set, the
|
|
|
|
parent of a resource provider cannot be changed.
|
2017-07-06 09:32:49 +01:00
|
|
|
min_version: 1.14
|
|
|
|
resource_provider_parent_provider_uuid_required:
|
2017-12-11 11:19:25 +09:00
|
|
|
<<: *resource_provider_parent_provider_uuid
|
2017-07-06 09:32:49 +01:00
|
|
|
required: true
|
2018-03-01 12:30:37 +00:00
|
|
|
resource_provider_root_provider_uuid_no_min: &resource_provider_root_provider_uuid_no_min
|
2017-07-06 09:32:49 +01:00
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: true
|
2018-03-01 12:30:37 +00:00
|
|
|
description: >
|
|
|
|
UUID of the top-most provider in this provider tree.
|
|
|
|
resource_provider_root_provider_uuid_required:
|
|
|
|
<<: *resource_provider_root_provider_uuid_no_min
|
2017-07-06 09:32:49 +01:00
|
|
|
description: >
|
|
|
|
Read-only UUID of the top-most provider in this provider tree.
|
|
|
|
min_version: 1.14
|
2017-03-23 18:00:29 +08:00
|
|
|
resource_provider_usages:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The usage summary of the resource provider. This is a dictionary that
|
|
|
|
describes how much each class of resource is being consumed on this
|
|
|
|
resource provider. For example, ``"VCPU": 1`` means 1 VCPU is used.
|
2017-01-10 17:33:13 +00:00
|
|
|
resource_provider_uuid:
|
2017-03-24 20:47:41 +03:00
|
|
|
<<: *resource_provider_uuid_path
|
2017-01-10 17:33:13 +00:00
|
|
|
in: body
|
2017-05-24 10:58:42 +03:00
|
|
|
resource_provider_uuid_opt:
|
|
|
|
<<: *resource_provider_uuid_path
|
|
|
|
in: body
|
|
|
|
required: false
|
2017-01-10 17:33:13 +00:00
|
|
|
resource_providers:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of ``resource_provider`` objects.
|
2017-06-26 14:27:49 +03:00
|
|
|
resources:
|
|
|
|
type: object
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A dictionary of resource records keyed by resource class name.
|
2017-04-03 11:30:03 +03:00
|
|
|
step_size: &step_size
|
2017-03-24 20:47:41 +03:00
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A representation of the divisible amount of the resource
|
|
|
|
that may be requested. For example, step_size = 5 means
|
|
|
|
that only values divisible by 5 (5, 10, 15, etc.) can be requested.
|
2017-04-03 11:30:03 +03:00
|
|
|
step_size_opt:
|
|
|
|
<<: *step_size
|
|
|
|
required: false
|
2017-03-24 20:47:41 +03:00
|
|
|
total:
|
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The actual amount of the resource that the provider can accommodate.
|
2017-06-14 14:41:33 +03:00
|
|
|
traits:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of traits.
|
2017-07-06 15:23:26 +03:00
|
|
|
used:
|
|
|
|
type: integer
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The amount of the resource that has been already allocated.
|
2017-10-16 21:27:40 +01:00
|
|
|
user_id_body: &user_id_body
|
2017-06-26 14:27:49 +03:00
|
|
|
<<: *user_id
|
|
|
|
in: body
|
|
|
|
required: true
|
2017-10-16 21:27:40 +01:00
|
|
|
user_id_body_1_12:
|
|
|
|
<<: *user_id_body
|
|
|
|
min_version: 1.12
|
|
|
|
user_id_body_1_8:
|
|
|
|
<<: *user_id_body
|
2017-06-26 14:27:49 +03:00
|
|
|
min_version: 1.8
|
2016-12-09 21:47:25 +00:00
|
|
|
version_id:
|
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A common name for the version being described. Informative only.
|
2018-06-13 14:38:23 +01:00
|
|
|
version_links:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of links related to and describing this version.
|
2016-12-09 21:47:25 +00:00
|
|
|
version_max:
|
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The maximum microversion that is supported.
|
|
|
|
version_min:
|
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The minimum microversion that is supported.
|
2018-06-13 14:38:23 +01:00
|
|
|
version_status:
|
|
|
|
type: string
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
The status of the version being described. With placement this is
|
|
|
|
"CURRENT".
|
2016-12-09 21:47:25 +00:00
|
|
|
versions:
|
|
|
|
type: array
|
|
|
|
in: body
|
|
|
|
required: true
|
|
|
|
description: >
|
|
|
|
A list of version objects that describe the API versions available.
|