api: Add support for new cyborg extra specs
There's currently only one, as noted at [1]. [1] https://specs.openstack.org/openstack/nova-specs/specs/train/approved/nova-cyborg-interaction.html Change-Id: Ie70a0aef4f6647510750b7e0bdd2f040331b79e8 Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This commit is contained in:
		
							
								
								
									
										36
									
								
								nova/api/validation/extra_specs/accel.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										36
									
								
								nova/api/validation/extra_specs/accel.py
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,36 @@ | |||||||
|  | # Copyright 2020 Red Hat, Inc. All rights reserved. | ||||||
|  | # | ||||||
|  | # 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. | ||||||
|  |  | ||||||
|  | """Validators for ``accel`` namespaced extra specs.""" | ||||||
|  |  | ||||||
|  | from nova.api.validation.extra_specs import base | ||||||
|  |  | ||||||
|  |  | ||||||
|  | EXTRA_SPEC_VALIDATORS = [ | ||||||
|  |     base.ExtraSpecValidator( | ||||||
|  |         name='accel:device_profile', | ||||||
|  |         description=( | ||||||
|  |             'The name of a device profile to configure for the instance. ' | ||||||
|  |             'A device profile may be viewed as a "flavor for devices".' | ||||||
|  |         ), | ||||||
|  |         value={ | ||||||
|  |             'type': str, | ||||||
|  |             'description': 'A name of a device profile.', | ||||||
|  |         }, | ||||||
|  |     ), | ||||||
|  | ] | ||||||
|  |  | ||||||
|  |  | ||||||
|  | def register(): | ||||||
|  |     return EXTRA_SPEC_VALIDATORS | ||||||
| @@ -47,6 +47,7 @@ oslo.policy.policies = | |||||||
|     # aggregate method. |     # aggregate method. | ||||||
|     nova = nova.policies:list_rules |     nova = nova.policies:list_rules | ||||||
| nova.api.extra_spec_validators = | nova.api.extra_spec_validators = | ||||||
|  |     accel = nova.api.validation.extra_specs.accel | ||||||
|     aggregate_instance_extra_specs = nova.api.validation.extra_specs.aggregate_instance_extra_specs |     aggregate_instance_extra_specs = nova.api.validation.extra_specs.aggregate_instance_extra_specs | ||||||
|     capabilities = nova.api.validation.extra_specs.capabilities |     capabilities = nova.api.validation.extra_specs.capabilities | ||||||
|     hw = nova.api.validation.extra_specs.hw |     hw = nova.api.validation.extra_specs.hw | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Stephen Finucane
					Stephen Finucane