nova/nova/objects
Lee Yarwood 5913bd889f compute: Validate a BDMs disk_bus when provided
Previously disk_bus values were never validated and could easily end up
being ignored by the underlying virt driver and hypervisor.

For example, a common mistake made by users is to request a virtio-scsi
disk_bus when using the libvirt virt driver. This however isn't a valid
bus and is ignored, defaulting back to the virtio (virtio-blk) bus.

This change adds a simple validation in the compute API using the
potential disk_bus values provided by the DiskBus field class as used
when validating the hw_*_bus image properties.

Closes-Bug: #1876301
Change-Id: I77b28b9cc8f99b159f628f4655d85ff305a71db8
2020-07-29 16:05:48 +00:00
..
__init__.py nova-net: Remove unused nova-network objects 2020-02-18 13:19:43 +00:00
agent.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
aggregate.py DB API changes to get non-matching aggregates from metadata 2019-09-12 16:56:32 -05:00
bandwidth_usage.py Stop handling 'update_cells' on 'BandwidthUsage.create' 2019-05-20 10:29:16 +01:00
base.py Make serialize_args handle exception messages safely 2020-03-21 06:08:11 +00:00
block_device.py Remove 'bdm_(update_or_create|destroy)_at_top' 2019-04-16 18:26:17 +01:00
build_request.py Fix listing deleted servers with a marker 2019-10-23 10:32:28 -04:00
cell_mapping.py Fix using template cell urls with nova-manage 2019-01-17 14:18:14 -08:00
compute_node.py objects: Add migrate-on-load behavior for legacy NUMA objects 2020-05-06 15:40:06 +01:00
console_auth_token.py Reduce scope of 'path' query parameter to noVNC consoles 2019-09-27 13:50:52 +00:00
diagnostics.py Add NovaEphemeralObject class for non-persistent objects 2020-01-14 08:13:18 -08:00
ec2.py ec2: Move ec2utils functions to their callers 2019-09-27 15:27:08 +01:00
external_event.py Define Cyborg ARQ binding notification event. 2020-03-01 13:52:51 -08:00
fields.py compute: Validate a BDMs disk_bus when provided 2020-07-29 16:05:48 +00:00
flavor.py Merge "Remove old flavor_create db api method" 2018-03-20 18:11:06 +00:00
host_mapping.py Warn for duplicate host mappings during discover_hosts 2019-06-13 17:18:16 +00:00
hv_spec.py objects: Move 'hv_type' to 'fields.HVType' 2016-11-25 16:19:43 +00:00
image_meta.py scheduler: Request vTPM trait based on flavor or image 2020-07-16 17:54:44 +01:00
instance.py objects: Update keypairs when saving an instance 2020-07-22 12:29:19 +00:00
instance_action.py Store instance action event exc_val fault details 2020-03-21 06:08:34 +00:00
instance_fault.py Remove 'instance_fault_create_at_top' 2019-04-29 17:54:17 +01:00
instance_group.py Avoid unnecessary joins in InstanceGroup.get_hosts 2019-05-23 11:14:55 -04:00
instance_info_cache.py Remove 'instance_info_cache_update_at_top' 2019-04-29 17:55:41 +01:00
instance_mapping.py Raise InstanceMappingNotFound if StaleDataError is encountered 2020-06-24 20:29:44 +00:00
instance_numa.py objects: Introduce the 'CPUAllocationPolicy.MIXED' enum 2020-07-15 00:39:46 +08:00
instance_pci_requests.py Remove stale nested backport from InstancePCIRequests 2020-04-21 09:07:32 -07:00
keypair.py Drop migrate_keypairs_to_api_db data migration 2019-04-03 11:42:48 -04:00
migrate_data.py New objects for NUMA live migration 2019-09-12 17:34:34 -04:00
migration.py objects: Add MigrationTypeField 2020-05-08 14:45:54 +01:00
migration_context.py Fix accumulated non-docs nits for cross-cell-resize series 2019-12-23 10:10:57 -05:00
monitor_metric.py Fix MonitorMetric obj_make_compatible 2016-09-12 14:10:41 +00:00
network_metadata.py Assorted cleanups from numa-aware-vswitches series 2018-07-27 09:49:12 -07:00
network_request.py nova-net: Kill it 2020-01-14 21:25:56 +00:00
numa.py objects: Add migrate-on-load behavior for legacy NUMA objects 2020-05-06 15:40:06 +01:00
pci_device.py Add NovaEphemeralObject class for non-persistent objects 2020-01-14 08:13:18 -08:00
pci_device_pool.py [2/3]Replace six.iteritems() with .items() 2017-01-09 09:11:00 +00:00
quotas.py Merge "Add NovaEphemeralObject class for non-persistent objects" 2020-01-19 23:18:59 +00:00
request_spec.py Merge "Add NovaEphemeralObject class for non-persistent objects" 2020-01-19 23:18:59 +00:00
resource.py libvirt: Enable driver discovering PMEM namespaces 2019-09-13 08:50:35 +00:00
security_group.py nova-net: Add TODOs to remove security group-related objects 2020-01-08 13:54:12 +00:00
selection.py Add Selection.availability_zone field 2019-10-02 13:39:24 -04:00
service.py compute: bump nova-compute version and check in API 2020-07-21 15:18:36 +08:00
tag.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
task_log.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
trusted_certs.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
vcpu_model.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
virt_cpu_topology.py cleanup NovaObjectDictCompat from virt_cpu_topology 2015-08-05 08:56:30 +05:30
virt_device_metadata.py Use nova.db.api directly 2018-07-10 14:56:27 +00:00
virtual_interface.py Populate InstanceMapping.user_id during migrations and schedules 2019-03-08 19:01:25 -05:00
volume_usage.py Transform volume.usage notification 2018-10-09 06:28:11 +00:00