1dca56f58e
This commit is the result of running the following search and replace across the project. s/nova\.api\.openstack\.?//g Change-Id: I4974a28de541aace043504f788cf0d100f778cae
57 lines
1.6 KiB
Python
57 lines
1.6 KiB
Python
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
"""Trait schemas for Placement API."""
|
|
|
|
import copy
|
|
|
|
from placement.schemas import common
|
|
|
|
|
|
TRAIT = {
|
|
"type": "string",
|
|
'minLength': 1, 'maxLength': 255,
|
|
}
|
|
|
|
CUSTOM_TRAIT = copy.deepcopy(TRAIT)
|
|
CUSTOM_TRAIT.update({"pattern": common.CUSTOM_TRAIT_PATTERN})
|
|
|
|
PUT_TRAITS_SCHEMA = {
|
|
"type": "object",
|
|
"properties": {
|
|
"traits": {
|
|
"type": "array",
|
|
"items": CUSTOM_TRAIT,
|
|
}
|
|
},
|
|
'required': ['traits'],
|
|
'additionalProperties': False
|
|
}
|
|
|
|
SET_TRAITS_FOR_RP_SCHEMA = copy.deepcopy(PUT_TRAITS_SCHEMA)
|
|
SET_TRAITS_FOR_RP_SCHEMA['properties']['traits']['items'] = TRAIT
|
|
SET_TRAITS_FOR_RP_SCHEMA['properties'][
|
|
'resource_provider_generation'] = {'type': 'integer'}
|
|
SET_TRAITS_FOR_RP_SCHEMA['required'].append('resource_provider_generation')
|
|
|
|
LIST_TRAIT_SCHEMA = {
|
|
"type": "object",
|
|
"properties": {
|
|
"name": {
|
|
"type": "string"
|
|
},
|
|
"associated": {
|
|
"type": "string",
|
|
}
|
|
},
|
|
"additionalProperties": False
|
|
}
|