[release-announce] nova 23.0.0 (wallaby)

no-reply at openstack.org no-reply at openstack.org
Wed Apr 14 11:22:27 UTC 2021


We eagerly announce the release of:

nova 23.0.0: Cloud computing fabric controller

This release is part of the wallaby release series.

The source is available from:

    https://opendev.org/openstack/nova

Download the package from:

    https://tarballs.openstack.org/nova/

Please report issues through:

    https://bugs.launchpad.net/nova/+bugs

For more details, please see below.

Changes in nova 22.0.0..23.0.0
------------------------------

68af588d5c Bumping min os-brick ver to 4.3.1
bd0c687813 [stable-only]Update TOX_CONSTRAINTS_FILE for stable/wallaby
d5cefe1373 [stable-only]Update .gitreview for stable/wallaby
4a285b1fb9 Fix check_instance_shared_storage() call
1780005eed Bump the Compute RPC API to version 6.0
020e46094a [Arm64][libvirt] Fix read bytes from json files
bc2c19bb2d Reset global wsgi app state in unit test
49767beaa9 docs: Add SEV guide
c5ebaef610 docs: Remove duplicated PCI passthrough extra spec info
94c03e8d66 docs: Remove duplicate TPM extra spec info
777c02485f docs: Add a real-time guide
8528eaa602 docs: Add a resource limits guide
dd15a09af4 Wallaby 23.0.0 prelude section
064349a888 releasenotes: Fix typo
7e7209b63a doc: mark the max microversion for wallaby
5d5ff82bab Add config parameter 'live_migration_scheme' to live migration with tls guide
78be7de1e5 Add missed accel_uuids for _poll_shelved_instances
7326e46aae Add release note for vDPA
22fcfcda23 tests: Add functional test for vDPA device
45798adf5a api: Block unsupported actions with vDPA
ab04eb2196 pci: Add vDPA vnic to PCI request mapping and filtering
14071dfb11 libvirt: Deprecate `live_migration_tunnelled`
f4c249c692 docs: Document UEFI secure boot feature
e9c80da2db libvirt: Add guest generation for vDPA
9a673a8faa libvirt: Add vDPA nodedev parsing
becb94ae64 Dynamically archive FK related records in archive_deleted_rows
dcfe40c30b tests: Remove duplicated 'start_compute' helper
b202fa3a0e tests: Add functional tests for UEFI, secure boot
ff3fd84636 docs: Add note about rescuing bfv instances with the 2.87 microversion
52b505c9cb libvirt: Move PCI host device parsing to 'host'
7313832d58 objects: Add 'VDPA' to 'PciDeviceType'
5cd1acc3bf Support per port numa policies with SR-IOV
b2471dd578 pci: implement the 'socket' NUMA affinity policy
658f2327bc add constants for vnic type vdpa
46704f7702 Make nova-ceph-multistore use policy.yaml
d79f366cf5 fakelibvirt: make kB_mem default not laughable
46e3502c30 libvirt: Report secure boot support to scheduler
e7d704899f libvirt: Wire up 'os_secure_boot' property
9fff6893ce libvirt: Use firmware metadata files to configure instance
7d08a360d7 setup.cfg: Resolve warning
452d2fb3a0 libvirt: Move some host arch checks to guest checks
faad45b632 libvirt: Add parsing of firmware metadata files
8318eb9c2f docs: Add version{added,changed} notes to the hw_machine_type guide
890b6d54a6 pci: track host NUMA topology in stats
6c3175d3ee pci manager: replace node_id parameter with compute_node
1862971faa scheduler: Translate secure boot requests to trait
d2fef725b1 compute: Report COMPUTE_SECURITY_UEFI_SECURE_BOOT
bc020efab3 hardware: Start parsing 'os_secure_boot'
e0e969857b trivial: Clarify purpose of 'Host.supports_*' properties
141f3e7d4f libvirt: Add missing type hints
94d16e7c77 libvirt: Stop passing around virt_type, caps
31889ce296 libvirt: Add tests for insecure UEFI configuration
8f317f442c nova-next: Start testing the q35 machine type
598e247437 Differentiate between InstanceNotFound and ConstraintNotMet
aeb8de892b Add device event constants to fakelibvirt
8da39de007 libvirt: Add firmware auto-configuration support
3f63c68195 libvirt: Add support for virtio-based input devices
a65e4201cc tests: Stop mocking 'nova.virt.libvirt.utils.get_arch'
3d4e53f832 Add functional test for bug 1837995
bcd6b42047 libvirt: Allow disabling CPU flags via `cpu_model_extra_flags`
4b32f9c9e3 Remove VFSLocalFS
d06a10f096 Remove non-libguestfs file injection for libvirt
df89596edb apidb: Compact Train database migrations
dae3c89874 apidb: Compact Stein database migrations
6665bd8cb9 apidb: Compact Rocky database migrations
86b423f9f3 apidb: Compact Queens database migrations
31f01aa44f apidb: Compact Pike database migrations
743693c740 apidb: Compact Ocata database migrations
9020896cb7 docs: Add admin docs for configuring and updating machine types
0b44c7ccef libvirt: Add a config update workflow test for [libvirt]hw_machine_type
947f813e56 Fix ImageBackendFixture not to support direct_snapshot
8cddd243bf nova-status: Add hw_machine_type check for libvirt instances
9a5b07d9fc nova-manage: Add libvirt list_unset_machine_type command
c70cde057d nova-manage: Add libvirt update_machine_type command
20692c245c nova-manage: Add libvirt get_machine_type command
f0eeba5c8c hyper-v rbd volume support
95fbbce8b2 requirements.txt: Bump os-brick to 4.2.0
98713d69ac libvirt: Deprecate disable_native_luksv1 and rbd_volume_local_attach
e64744b92f rpc: Rework 'get_notifier', 'wrap_exception'
c23bda400a libvirt: Remove dead code
59986cfd4f Replace md5 for fips
c8478e40bd Remove short call timeout from func test
db7517d5a8 scheduler: Add 'socket' PCI NUMA affinity policy trait
be80dfdc71 objects: Add 'socket' PCI NUMA affinity
fef371a425 Follow up for QoS interface attach
5d3fb6cdbd Docs: Correct ``Password injection using the dashboard`` Explanation
96072a1ef1 libvirt: parse alias out from device config
a634103b15 libvirt: allow querying devices from the persistent domain
f5cd6e2dea libvirt: add AsyncDeviceEventsHandler
4a70fc9cfb libvirt: Define and emit DeviceRemovedEvent and DeviceRemovalFailedEvent
95b9481aa4 libvirt: start tracking NUMACell.socket for hosts
4e23d93410 libvirt: Parse the 'os' element from domainCapabilities
f7e3e17991 tests: Poison os.uname
b367cf114c tests: Remove unnecessary mock
1053ae0b61 tests: Add 'nova.virt.libvirt.utils.get_arch' stub to fixture
5c35a5905e FUP: Catch and reraise routed nets exception
a1673d3118 Add a routed networks scheduler pre-filter
c4b28a5496 Add net & utils methods for routed nets & segments
123f6262f6 Handle instance = None in _local_delete_cleanup
f88a8b0c1b Fixes the elapsed time logged during a live migration
838370a490 libvirt: add IP address to libvirt guest metadata
f7975d640c Add regression test for bug 1914777
d23cf26ec7 Change API unexpected exception message
85cb4af075 tox: Add passenv DISABLE_CHERRY_PICK_CHECK to pep8
5b20c628b2 libvirt: Record the machine_type of instances in system_metadata
21656d4e9c Run nova-live-migration job with neutron-trunk enabled
172024db71 Centralize sqlite FK constraint enforcement
2e8e04a8f6 libvirt: Don't drop CPU flags with policy='disable' from guest XML
94b5db6d2e Make a couple test jobs run async devstack
18ad9d97ab Remove unused Instance method
5af28c4de5 Support interface attach with QoS ports
9bdfdf7222 Uncap PrettyTable
302f2bc4f7 apidb: Compact Newton database migrations
d2449232bd apidb: Compact Mitaka database migrations
d97fd31131 apidb: Compact Liberty database migrations
a172b75587 apidb: Add manage.py script
35b58a5035 cmd: Remove 'nova-manage db ironic_flavor_migration'
737cae76e4 conf: Clean up docs for scheduler options
9d53f366ff conf: Drop '[scheduler] periodic_task_interval'
5aeb3a3874 Drop support for custom schedulers
81b689e5bb fup: Merge duplicate volume attachment checks
1252588d4e api: Reject volume attach requests when an active bdm exists
ee3a8f0225 Add regression test for bug #1908075
cea5bf3d93 Remove __unicode__() from nova unit test Exception
f6bacd3fde Refactor and rename test_tcp_rst_no_compute_rpcapi
9e96f64126 Rename ensure_network_metadata to amend requested_networks
edaaac6aaf Add requested_networks field to RequestSpec object
2d4eff0ef7 cmd: Remove 'nova-manage db null_instance_uuid_scan'
7961cc3428 libvirt: Always enable USB controller on PPC64
21af4dd4bb libvirt: Stub out 'nova.virt.libvirt.utils.get_arch'
96cf885ecd zuul: Mark nova-lvm as voting
7d66f97e0a zuul: Increase SWIFT_LOOPBACK_DISK_SIZE within nova-lvm job
936039d386 [FUP] this change removes an unused paramater
a19d25b67f docs: Move the LibvirtDistroSupportMatrix wiki page into our docs
cbe3cd9dc3 Restart glance after updating policy in job
25a632a4e1 Disallow CONF.compute.max_disk_devices_to_attach = 0
f9901ca927 glance: Remove [glance]/allowed_direct_url_schemes
b62a1abd61 libvirt: Use specific user when probing encrypted rbd disks during extend
7062e1db8b tox: Enable parallel docs build
5beec0feab libvirt: Rationalize attachment of USB tablet
db8213af83 api: Reject requests to detach a volume when the compute is down
a3697ed013 Add regression test for bug #1909120
cb56ae6aad Fix ForbiddenWithAccelerators to HTTPForbidden for shelve API
ee603927b0 libvirt: Remove 'hypervisor_version' from 'libvirt_info'
6b4db089b2 zuul: Allow encryption tests in nova-ceph-multistore again
95724bbaef libvirt: Bump MIN_{LIBVIRT,QEMU}_VERSION and NEXT_MIN_{LIBVIRT,QEMU}_VERSION
3a390c2c82 libvirt: Drop support for Xen
d02ce3c4f0 libvirt: Drop support for UML
0aff191514 libvirt: Remove MIN_LIBVIRT_VIR_ERR_DEVICE_MISSING
d5420bbb50 docs: Add reference docs for internal block device structures
684780ac0d libvirt: Load and cache volume drivers on-demand
0f558749d1 libvirt: Stop NVMe and ScaleIO unit tests from calling os-brick
6eae97843a zuul: Skip test_attach_cloned_encrypted_volume in nova-ceph-multistore
af15488be9 add openstack-python3-wallaby-jobs-arm64 job
74f5eb2ce9 Add generate schemas tool
dda179d3f9 Do not inherit os_glance properties on snapshot
c3804efd42 Refactor ResourceRequest constructor
e6ff3651e6 Enable mypy on scheduler/utils.py
be9dd3d9db Refactor update_pci_request_spec_with_allocated_interface_name
20fe077343 Factor out port resource deallocation
b7f133898e Make remove allocation symmetric with add allocation
54865a17cd Allow extending an existing instance allocation
672b288324 Refactor _claim_pci_device_for_interface_attach to prepare for qos
160e229f85 Move query param generation to RequestGroup o.vo
534b4f3895 api: Log os-resetState as an instance action
40e0578683 api-ref: Clarify 'all_tenants' command
7fbd787b1b Cyborg shelve/unshelve support
a72ace1c6c Reuse code from oslo lib for JSON policy migration
594df9aeb0 use psycopg2 binary instead of source package
9046f0fff4 utils: Remove periods from instance hostnames
5f93b680e7 Fix typo in warning message
dc09bcd311 libvirt: Mock get_arch during some stable rescue unit tests
7aa7fb94fd tests: Clean up 'test_hypervisors'
1f67ce2496 api: Drop statistics-style fields from os-hypervisors
ef7598ac28 api: Normalize exception handling for os-hypervisors
5c9c81e0f9 db: Compact Train database migrations
f0175a346a db: Compact Stein database migrations
02d6a96588 db: Compact Rocky database migrations
d83b02c5f6 db: Compact Queens database migrations
7674fc6cd8 db: Compact Pike database migrations
eb5a1e4d72 db: Compact Ocata database migrations
c57cc047ee db: Compact Newton database migrations
76e8653ba1 db: Compact Mitaka database migrations
1da542ff7a db: Compact Liberty database migrations
b4fc1c141b db: Compact Kilo database migrations
15bb50daff db: Compact Juno database migration
833b7b60dd db: Compact Icehouse database migrations
4701d28da3 db: Drop "remove" of index
b7ba576cdd db: Merge in unique constraints
d693d755db db: Clean up base migration
f86bf703e5 tests: Remove 'test_extended_hypervisors'
c960fee835 Use the non polling notification waiter in func test
6c6bca0326 Remove dead code from SchedulerReportClient
b4f560d4e1 Improving the description for unshelve request body
606a5dfecc api-ref: Add notes about volume attach and detach being async
800254c0bc Run the db migration tests in the same test worker
0be00cd58a Trival Change: Remove redundant code in instance delete
9a0bc6e9cf Revert "nova-multi-cell: Skip test_cold_migrate_unshelved_instance"
b247e69923 stabilize set_host libvirt driver unit test
c501e23cb7 stabilize unit test asserting log
1c056c384d Fallback to same-cell resize with qos ports
f96ade2726 Reproduce bug 1907522 in functional test
8b33ac0644 only wait for plugtime events in pre-live-migration
00ad3bb1f1 tests: Merge 'test_hypervisor_status' into 'test_hypervisors'
032bbc3960 Refactoring of functional.regression.test_bug_1702454
7c9edc02ed Initialize global data separately and run_once in WSGI app init
0617cebcc9 Fix a deprecation warning of 'collections'
bd0ead2d63 Add a description in the PTL guide
1cf2431f4b Remove six.text_type (2/2)
383e2a8bdc Remove six.text_type (1/2)
07462dd005 Remove six.binary_type/integer_types/string_types
f02899418d libvirt: make cross cell resize spawn from snapshot image
eaa98e3340 nova-grenade-multinode: Skip test_live_block_migration_paused
048250a4b7 Disable qos resize tempest test for nova-multi-cell job
01f0424930 Enhance simple usage API documentation
1811731424 nova-evacuate: Remove leftover playbook from standalone job
7a9d4df24b lower-constraints: Bump packaging to 20.4
610396f8ad tools: Allow check-cherry-picks.sh to be disabled by an env var
95da142a15 Remove outdated comment from tox.ini
0b942dcaa5 Omit resource inventories from placement update if zero
3cb1215f19 Docs: correct cpu_thread_policy explanation
c11f4e5336 nova-multi-cell: Skip test_cold_migrate_unshelved_instance
f0ffed8c7f libvirt: check for AMD SEV only on x86-64
a107a5099e libvirt: Skip encryption metadata lookups if secret already exists on host
4bea68f12b Revert "zuul: Skip test_attach_scsi_disk_with_config_drive in nova-ceph-multistore"
671dc5bfe8 pci: Improve testing of 'nova.pci.request' module
d81ef45041 pci: Add logging for filtering
c2357ab9f3 pci: Improve docs for '_filter_*' functions
76360e566b nova-live-migration: Disable *all* virt services during negative tests
7f7a7a163e zuul: Add devstack-plugin-ceph-compute-local-ephemeral to experimental
26c46a409f compute: Don't detach volumes when RescheduledException raised without retry
836e13cd57 zuul: Skip test_attach_scsi_disk_with_config_drive in nova-ceph-multistore
adc705ee0c pci: Add a '_filter_pools' helper function
9c0ea4a901 doc: Fix rendering in the PTL guide
d38b7e13a6 Support sys.argv in wsgi app
454b8d30f4 Fix config option default value for sample config file
9d1683f70f virt: Remove 'get_all_bw_counters' API
1273c5ee0b Make PCI claim NUMA aware during live migration
68bc87876f virt: Remove 'reset_network' API
67454b307b Fix invalid argument formatting in exception messages
ed756d07b1 Fix the instance_uuid for test
528740128a Revert "Temporarily disable parts of heal port allocation test"
30067be9bd virt: Remove 'change_instance_metadata' API
160ed6ff65 Add missing exception
e13e8c8cd4 api-ref: Move 'os-agents' API to obsolete section
65fb14c36e doc: require openstack client change for every new API microversion
8c9d6fc8f0 Ignore PCI devices with 32bit domain
976ac722d3 Reproduce bug 1897528
2c28b74340 [Trivial]Add missing white space in the log message
a1ec6e69fa doc: Update the PTL guide
433bee58bc Restore retrying the RPC connection to conductor
52c8137b4b [docs] Fix a placement client's command
1d23b358d6 functional: Wait for revert resize to complete
3fcaf579a2 Add functional-py39 testing
bf47afd70a Update contributor guide for Wallaby
798f06abb2 Remove [database]connection defaulting
3b44275868 Improve error handling during service level check
66c7f00e1d Fix unplugging VIF when migrate/resize VM
b62f9a04a0 Add os-volume_attachments reference docs
d718adb108 functional: Expand SR-IOV live migration tests with NUMA
ec8732a4b8 functional: Add live migration tests for PCI, SR-IOV servers
c163205489 Remove compute service level check for qos ops
4916ab7a4c rbd: Only log import failures when the RbdDriver is used
be752b8175 zuul: Reintroduce nova-dsvm-multinode-base
f6d74eabfc Remove six.byte2int/int2byte
28ad7c517d Remove six.iteritems/itervalues/iterkeys
1d0a0e8c20 Remove six.moves
4ac4a04d18 zuul: Replace nova-live-migration with zuulv3 jobs
c0fe95fcc5 zuul: Merge nova-evacuate into nova-multinode-live-migration
8d9f298f4c Fix the compute RPC 5.12 issue
f2ebe107d1 Bump the lowest eventlet version to 0.26.1
8f79afd448 Add a regression test for 5.12 compute API issue
3b8257cd23 Add upgrade check about old computes
7675964af8 Set instance host and drop migration under lock
3f348602ae Reproduce bug 1896463 in func env
f419f1a4b1 Use _evacuate_server helper in func test
aa7c6f8769 Prevent starting services with older than N-1 computes
033a325578 Remove unused bindir config option
c82ce37635 Replace md5 with oslo version
e7c7a2851e Modify glance's copy_image permission for nova-ceph-multistore
7bd2bef3b4 tox: Stop linting as part of docs target
c716e7608e releasenotes: Add fixes note for bug #1882521
0d2ca53bb8 libvirt: Only ask tpool.Proxy to autowrap vir* classes
b32a685595 docs: Make JSON valid
5b9d587e74 trivial: Remove irrelevant comment
f5a68826c7 [doc]: Fix glance image_metadata link
2317b92f4e Add regression test for bug #1899835
e728fe668a Use subqueryload() instead of joinedload() for (system_)metadata
fbf6178762 Ignore InstanceNotFound exception when host rejoin cluster
78ad4a4efd Add placeholder migrations for Victoria backports
eeeca4ceff Handle disabled CPU features to fix live migration failures
2bd8900d9b Fix the vGPU dynamic options race
b8695de6da Update pci stat pools based on PCI device changes
e620e45790 CinderFixture: Return a driver_type of `fake` within connection_info
1f06418549 Remove self.server dependency form _evacuate_server
770c139edb Add regression test for bug #1899649
4a4f12678a Fix virsh domifstat to get vhostuser vif statistics
1c256cf774 Prevent archiving of pci_devices records because of 'instance_uuid'
82528c83ac hardware: Check inventory of shared CPUs for 'mixed' policy
9e1fe29d76 functional: Add test for #1898272
583e85622b functional: Add tests for mixed CPU policy
12cc805d36 objects: Fix issue in exception type
450213f1f0 Clean up the DynamicVendorData constructor
1390eecf8d Use cell targeted context to query BDMs for metadata
cf0e519a0e Allow excluding image type capabilities
f44700935f Include removal of ephemeral backing files in the image cache manager
6cf449bdd0 compute: Lock by instance.uuid lock during swap_volume
383bcbca70 optimize the shelve code flow
1e10461c71 Follow up for cherry-pick check for merge patch
c34a17db6f libvirt: Only add a USB controller if it's necessary
5b0343d3e1 libvirt: Remove support for '[libvirt] use_usb_tablet'
f2ca089bce libvirt: 'video.vram' property must be an integer
dd1e6d4b0c libvirt: Increase incremental and max sleep time during device detach
aa16dd09eb libvirt: Log exception when unable to import rbd or rados
ead034d969 bindep: Install python3 and python3-devel on CentOS 8 and Fedora
015f7dadcc libvirt: Remove MIN_{LIBVIRT,QEMU}_PMEM_SUPPORT
0e7cd9d1a9 libvirt: Remove MIN_LIBVIRT_VIDEO_MODEL_VERSIONS
226250beb6 nova-evacuate: Disable libvirtd service and sockets during negative tests
d309e3cdf5 Temporarily disable parts of heal port allocation test
8d3c2ce92b Add a hacking rule for assert_has_calls
1175081294 Fix a hacking test
6b22b697f7 libvirt: Remove MIN_LIBVIRT_BETTER_SIGKILL_HANDLING
6c8e287156 libvirt: Remove MIN_{LIBVIRT,QEMU}_NATIVE_TLS_VERSION
99850a0481 Add reproducer for bug #1894095
ed4a748bda Add Python3 wallaby unit tests
851cc12f67 Update master for stable/victoria
f357d80407 zuul: Introduce nova-evacuate
73cc85d910 Log stack trace when fails launching a defined domain
416cd1ab18 libvirt: make mdev types name attribute be optional
34cc68ac6e libvirt: Remove MIN_LIBVIRT_FILE_BACKED_DISCARD_VERSION
48123d6321 hyperv: Configures chassis asset tags for VMs.
50ff47d553 remove python warnning  from tox
b933312579 Use absolute path during qemu img rebase
4861eebc91 fixtures: Handle binding of first port
0fa6f4e7e1 objects: Remove Agent, AgentList
7ac52e643c api: Remove 'os-agents' API
8aea747c97 virt: Remove 'get_per_instance_usage' API
83ae149c72 virt: Remove various aggregate APIs
caa5f9ef94 virt: Remove 'set_bootable' API
39fe22161c virt: Remove 'post_interrupted_snapshot_cleanup' API
912b717207 virt: Remove 'get_console_pool_info' API
696c8a95f6 Raise 409 when removing security group from instance
17184e7d56 vmware: Use cookiejar from oslo.vmware client directly
df8a658bd9 vmware tests: Support different moref backend representations
ae8c3067c5 libvirt: Use local variable instead of CONF
b6e9023751 Fix misleading documentation for live_migration_inbound_addr
de10c126e9 Improve documentation of (unpin|pin)_cpus_with_siblings()
5477c0045f Add an online migration for PciDevice.uuid
9d4725bcb6 Modify PciDevice.uuid generation code
76c60c25bc Update supported transports for iscsi connector


Diffstat (except docs and test files)
-------------------------------------

.gitreview                                         |    1 +
.zuul.yaml                                         |   69 +-
HACKING.rst                                        |    1 +
api-guide/source/accelerator-support.rst           |    6 +-
api-guide/source/port_with_resource_request.rst    |    7 +-
api-ref/source/index.rst                           |    2 +-
api-ref/source/os-agents.inc                       |   17 +-
api-ref/source/os-hypervisors.inc                  |   52 +-
api-ref/source/os-simple-tenant-usage.inc          |   12 +
api-ref/source/os-volume-attachments.inc           |    9 +
api-ref/source/parameters.yaml                     |   68 +-
api-ref/source/servers-action-shelve.inc           |    4 +
api-ref/source/servers-admin-action.inc            |   13 +-
bindep.txt                                         |    5 +-
devstack/nova-multi-cell-blacklist.txt             |    6 +
.../v2.88/hypervisors-detail-resp.json             |   25 +
.../hypervisors-detail-with-servers-resp.json      |   29 +
.../v2.88/hypervisors-list-resp.json               |   16 +
.../v2.88/hypervisors-search-resp.json             |   10 +
.../v2.88/hypervisors-show-resp.json               |   17 +
.../v2.88/hypervisors-show-with-servers-resp.json  |   27 +
.../v2.88/hypervisors-with-servers-resp.json       |   20 +
.../common_payloads/BandwidthPayload.json          |   10 -
.../common_payloads/ImageMetaPropsPayload.json     |    2 +-
.../common_payloads/InstanceExistsPayload.json     |    4 +-
.../admin/configuration/cross-cell-resize.rst      |    3 +-
.../admin/configuration/hypervisor-vmware.rst      |    2 +-
.../admin/configuration/hypervisor-xen-libvirt.rst |  239 --
.../secure-live-migration-with-qemu-native-tls.rst |   11 +-
.../reference/libvirt-distro-support-matrix.rst    |  303 ++
lower-constraints.txt                              |   46 +-
mypy-files.txt                                     |    4 +
nova/accelerator/cyborg.py                         |    4 +-
nova/api/metadata/base.py                          |   25 +-
nova/api/metadata/handler.py                       |   13 +-
nova/api/metadata/password.py                      |    1 -
nova/api/metadata/vendordata_dynamic.py            |    7 +-
nova/api/openstack/api_version_request.py          |    6 +-
nova/api/openstack/common.py                       |   42 +-
nova/api/openstack/compute/admin_actions.py        |   21 +-
nova/api/openstack/compute/agents.py               |  147 +-
nova/api/openstack/compute/aggregates.py           |    5 +-
.../openstack/compute/assisted_volume_snapshots.py |    3 +-
nova/api/openstack/compute/attach_interfaces.py    |   17 +-
nova/api/openstack/compute/evacuate.py             |   21 +-
nova/api/openstack/compute/flavors_extraspecs.py   |    5 +-
nova/api/openstack/compute/hosts.py                |    3 +-
nova/api/openstack/compute/hypervisors.py          |  226 +-
nova/api/openstack/compute/migrate_server.py       |   34 +-
nova/api/openstack/compute/quota_sets.py           |    4 +-
nova/api/openstack/compute/rescue.py               |    1 +
.../openstack/compute/rest_api_version_history.rst |   39 +-
nova/api/openstack/compute/routes.py               |    3 +-
nova/api/openstack/compute/schemas/agents.py       |  100 -
nova/api/openstack/compute/servers.py              |   21 +-
nova/api/openstack/compute/services.py             |    3 +-
nova/api/openstack/compute/shelve.py               |   24 +-
nova/api/openstack/compute/simple_tenant_usage.py  |    5 +-
nova/api/openstack/compute/suspend_server.py       |    7 +-
nova/api/openstack/compute/volumes.py              |    2 +-
nova/api/openstack/wsgi.py                         |   21 +-
nova/api/openstack/wsgi_app.py                     |   33 +-
nova/api/validation/extra_specs/hw.py              |    1 +
nova/api/validation/extra_specs/os.py              |    4 +-
nova/api/validation/parameter_types.py             |    4 +-
nova/api/validation/validators.py                  |    7 +-
nova/cmd/common.py                                 |    7 +-
nova/cmd/manage.py                                 |  289 +-
nova/cmd/scheduler.py                              |   14 +-
nova/cmd/status.py                                 |  177 +-
nova/compute/api.py                                |  341 +-
nova/compute/flavors.py                            |    5 +-
nova/compute/instance_actions.py                   |    1 +
nova/compute/manager.py                            |  823 +++--
nova/compute/provider_tree.py                      |    3 +-
nova/compute/resource_tracker.py                   |   66 +-
nova/compute/rpcapi.py                             |  385 +-
nova/compute/utils.py                              |   34 +-
nova/conductor/manager.py                          |   96 +-
nova/conductor/tasks/live_migrate.py               |   10 +-
nova/conductor/tasks/migrate.py                    |  117 +-
nova/conf/compute.py                               |   43 +-
nova/conf/database.py                              |    4 -
nova/conf/glance.py                                |   23 -
nova/conf/libvirt.py                               |  162 +-
nova/conf/paths.py                                 |   20 -
nova/conf/pci.py                                   |    8 +-
nova/conf/scheduler.py                             |  534 +--
nova/conf/service.py                               |    1 -
nova/conf/workarounds.py                           |   24 +-
nova/config.py                                     |   49 +-
nova/console/rfb/authvencrypt.py                   |    3 +-
nova/console/securityproxy/rfb.py                  |   17 +-
nova/console/serial.py                             |    3 +-
nova/console/websocketproxy.py                     |    7 +-
nova/context.py                                    |    3 +-
nova/crypto.py                                     |    6 +-
nova/db/api.py                                     |   29 -
nova/db/migration.py                               |   20 -
nova/db/sqlalchemy/api.py                          |  306 +-
.../migrate_repo/manage.py}                        |   11 +-
.../migrate_repo/versions/001_cell_mapping.py      |   42 -
.../migrate_repo/versions/002_instance_mapping.py  |   46 -
.../migrate_repo/versions/003_host_mapping.py      |   44 -
.../migrate_repo/versions/004_add_request_spec.py  |   41 -
.../migrate_repo/versions/005_flavors.py           |   82 -
.../migrate_repo/versions/006_build_request.py     |   68 -
.../007_instance_mapping_nullable_cellid.py        |   22 -
.../migrate_repo/versions/008_placeholder.py       |   23 -
.../migrate_repo/versions/009_placeholder.py       |   23 -
.../migrate_repo/versions/010_placeholder.py       |   23 -
.../migrate_repo/versions/011_placeholder.py       |   23 -
.../migrate_repo/versions/012_placeholder.py       |   23 -
.../versions/013_build_request_extended_attrs.py   |   52 -
.../migrate_repo/versions/014_keypairs.py          |   48 -
.../versions/015_build_request_nullable_columns.py |   48 -
.../versions/016_resource_providers.py             |  110 -
.../migrate_repo/versions/017_aggregates.py        |   73 -
.../migrate_repo/versions/018_instance_groups.py   |   71 -
.../019_build_request_add_block_device_mapping.py  |   26 -
.../020_block_device_mappings_mediumtext.py        |   24 -
.../migrate_repo/versions/021_placeholder.py       |   23 -
.../migrate_repo/versions/022_placeholder.py       |   23 -
.../migrate_repo/versions/023_placeholder.py       |   23 -
.../migrate_repo/versions/024_placeholder.py       |   23 -
.../migrate_repo/versions/025_placeholder.py       |   23 -
.../versions/026_add_resource_classes.py           |   36 -
.../migrate_repo/versions/027_quotas.py            |  124 -
.../028_build_requests_instance_mediumtext.py      |   24 -
.../versions/029_placement_aggregates.py           |   37 -
.../versions/030_require_cell_setup.py             |   59 -
.../migrate_repo/versions/031_placeholder.py       |   23 -
.../migrate_repo/versions/032_placeholder.py       |   23 -
.../migrate_repo/versions/033_placeholder.py       |   23 -
.../migrate_repo/versions/034_placeholder.py       |   23 -
.../migrate_repo/versions/035_placeholder.py       |   23 -
.../migrate_repo/versions/036_placeholder.py       |   23 -
.../migrate_repo/versions/037_placeholder.py       |   23 -
.../migrate_repo/versions/038_placeholder.py       |   23 -
.../migrate_repo/versions/039_placeholder.py       |   23 -
.../migrate_repo/versions/040_placeholder.py       |   23 -
.../versions/041_resource_provider_traits.py       |   66 -
.../versions/042_build_requests_add_tags.py        |   26 -
.../versions/043_placement_consumers.py            |   44 -
.../versions/044_placement_add_projects_users.py   |   72 -
.../migrate_repo/versions/045_placeholder.py       |   23 -
.../migrate_repo/versions/046_placeholder.py       |   23 -
.../migrate_repo/versions/047_placeholder.py       |   23 -
.../migrate_repo/versions/048_placeholder.py       |   23 -
.../migrate_repo/versions/049_placeholder.py       |   23 -
.../versions/050_flavors_add_description.py        |   26 -
.../versions/051_nested_resource_providers.py      |   50 -
.../versions/052_request_specs_spec_mediumtext.py  |   25 -
.../versions/058_cell_mapping_add_disabled.py      |   26 -
.../versions/059_add_consumer_generation.py        |   29 -
.../060_instance_group_policy_add_rules.py         |   26 -
.../061_instance_mapping_add_queued_for_delete.py  |   27 -
.../versions/062_instance_mapping_add_user_id.py   |   32 -
.../migrate_repo/versions/067_train.py             |  606 ++++
.../{053_placeholder.py => 078_placeholder.py}     |    0
.../{054_placeholder.py => 079_placeholder.py}     |    0
.../{055_placeholder.py => 080_placeholder.py}     |    0
.../{056_placeholder.py => 081_placeholder.py}     |    0
.../{057_placeholder.py => 082_placeholder.py}     |    0
.../migrate_repo/versions/217_placeholder.py       |   22 -
.../migrate_repo/versions/218_placeholder.py       |   22 -
.../migrate_repo/versions/219_placeholder.py       |   22 -
.../migrate_repo/versions/220_placeholder.py       |   22 -
.../migrate_repo/versions/221_placeholder.py       |   22 -
.../migrate_repo/versions/222_placeholder.py       |   22 -
.../migrate_repo/versions/223_placeholder.py       |   22 -
.../migrate_repo/versions/224_placeholder.py       |   22 -
.../migrate_repo/versions/225_placeholder.py       |   22 -
.../migrate_repo/versions/226_placeholder.py       |   22 -
.../227_fix_project_user_quotas_resource_length.py |   30 -
.../versions/228_add_metrics_in_compute_nodes.py   |   32 -
.../229_add_extra_resources_in_compute_nodes.py    |   35 -
...dd_details_column_to_instance_actions_events.py |   30 -
.../versions/231_add_ephemeral_key_uuid.py         |   34 -
.../migrate_repo/versions/232_drop_dump_tables.py  |   28 -
.../versions/233_add_stats_in_compute_nodes.py     |   39 -
.../versions/234_add_expire_reservations_index.py  |   43 -
.../migrate_repo/versions/235_placeholder.py       |   22 -
.../migrate_repo/versions/236_placeholder.py       |   22 -
.../migrate_repo/versions/237_placeholder.py       |   22 -
.../migrate_repo/versions/238_placeholder.py       |   22 -
.../migrate_repo/versions/239_placeholder.py       |   22 -
.../migrate_repo/versions/240_placeholder.py       |   22 -
.../migrate_repo/versions/241_placeholder.py       |   22 -
.../migrate_repo/versions/242_placeholder.py       |   22 -
.../migrate_repo/versions/243_placeholder.py       |   22 -
...4_increase_user_id_length_volume_usage_cache.py |   24 -
.../versions/245_add_mtu_and_dhcp_server.py        |   53 -
.../versions/246_add_compute_node_id_fk.py         |   30 -
.../migrate_repo/versions/246_sqlite_upgrade.sql   |   48 -
.../migrate_repo/versions/247_nullable_mismatch.py |   30 -
.../versions/248_add_expire_reservations_index.py  |   43 -
.../versions/249_remove_duplicate_index.py         |   31 -
.../250_remove_instance_groups_metadata.py         |   31 -
.../251_add_numa_topology_to_comput_nodes.py       |   30 -
.../versions/252_add_instance_extra_table.py       |   60 -
...253_add_pci_requests_to_instance_extra_table.py |   32 -
.../versions/254_add_request_id_in_pci_devices.py  |   35 -
.../migrate_repo/versions/255_placeholder.py       |   22 -
.../migrate_repo/versions/256_placeholder.py       |   22 -
.../migrate_repo/versions/257_placeholder.py       |   22 -
.../migrate_repo/versions/258_placeholder.py       |   22 -
.../migrate_repo/versions/259_placeholder.py       |   22 -
.../migrate_repo/versions/260_placeholder.py       |   22 -
.../migrate_repo/versions/261_placeholder.py       |   22 -
.../migrate_repo/versions/262_placeholder.py       |   22 -
.../migrate_repo/versions/263_placeholder.py       |   22 -
.../migrate_repo/versions/264_placeholder.py       |   22 -
.../versions/265_remove_duplicated_index.py        |   37 -
.../migrate_repo/versions/266_add_instance_tags.py |   27 -
.../versions/267_instance_uuid_non_nullable.py     |  110 -
.../versions/268_add_host_in_compute_node.py       |   42 -
.../versions/269_add_numa_node_column.py           |   32 -
.../versions/270_flavor_data_in_extra.py           |   32 -
.../versions/271_sqlite_postgresql_indexes.py      |   69 -
.../migrate_repo/versions/272_add_keypair_type.py  |   28 -
.../versions/273_sqlite_foreign_keys.py            |  108 -
.../274_update_instances_project_id_index.py       |   44 -
.../migrate_repo/versions/275_add_keypair_type.py  |   41 -
.../migrate_repo/versions/276_vcpu_model.py        |   32 -
.../versions/277_add_fixed_ip_updated_index.py     |   43 -
.../278_remove_service_fk_in_compute_nodes.py      |   68 -
.../279_fix_unique_constraint_for_compute_node.py  |   35 -
.../280_add_nullable_false_to_keypairs_name.py     |   35 -
.../migrate_repo/versions/281_placeholder.py       |   22 -
.../migrate_repo/versions/282_placeholder.py       |   22 -
.../migrate_repo/versions/283_placeholder.py       |   22 -
.../migrate_repo/versions/284_placeholder.py       |   22 -
.../migrate_repo/versions/285_placeholder.py       |   22 -
.../migrate_repo/versions/286_placeholder.py       |   22 -
.../migrate_repo/versions/287_placeholder.py       |   22 -
.../migrate_repo/versions/288_placeholder.py       |   22 -
.../migrate_repo/versions/289_placeholder.py       |   22 -
.../migrate_repo/versions/290_placeholder.py       |   22 -
.../versions/291_enforce_flavors_migrated.py       |   35 -
.../versions/292_drop_nova_volumes_tables.py       |   57 -
.../versions/293_add_migration_type.py             |   37 -
.../versions/294_add_service_heartbeat.py          |   29 -
.../295_add_virtual_interfaces_uuid_index.py       |   43 -
.../versions/297_add_forced_down_for_services.py   |   24 -
.../298_mysql_extra_specs_binary_collation.py      |   20 -
.../versions/299_service_version_number.py         |   24 -
.../migrate_repo/versions/300_migration_context.py |   32 -
...301_add_cpu_and_ram_ratios_for_compute_nodes.py |   29 -
...302_pgsql_add_instance_system_metadata_index.py |   36 -
.../migrate_repo/versions/303_placeholder.py       |   22 -
.../migrate_repo/versions/304_placeholder.py       |   22 -
.../migrate_repo/versions/305_placeholder.py       |   22 -
.../migrate_repo/versions/306_placeholder.py       |   22 -
.../migrate_repo/versions/307_placeholder.py       |   22 -
.../migrate_repo/versions/308_placeholder.py       |   22 -
.../migrate_repo/versions/309_placeholder.py       |   22 -
.../migrate_repo/versions/310_placeholder.py       |   22 -
.../migrate_repo/versions/311_placeholder.py       |   22 -
.../migrate_repo/versions/312_placeholder.py       |   22 -
.../versions/313_add_parent_id_column.py           |   40 -
.../versions/314_add_resource_provider_tables.py   |   81 -
.../versions/315_add_migration_progresss_detail.py |   30 -
.../316_add_disk_ratio_for_compute_nodes.py        |   27 -
.../versions/317_add_aggregate_uuid.py             |   32 -
.../318_resource_provider_name_aggregates.py       |   90 -
.../319_add_instances_deleted_created_at_index.py  |   45 -
.../migrate_repo/versions/320_placeholder.py       |   23 -
.../migrate_repo/versions/321_placeholder.py       |   23 -
.../migrate_repo/versions/322_placeholder.py       |   23 -
.../migrate_repo/versions/323_placeholder.py       |   23 -
.../migrate_repo/versions/324_placeholder.py       |   23 -
.../migrate_repo/versions/325_placeholder.py       |   23 -
.../migrate_repo/versions/326_placeholder.py       |   23 -
.../migrate_repo/versions/327_placeholder.py       |   23 -
.../migrate_repo/versions/328_placeholder.py       |   23 -
.../migrate_repo/versions/329_placeholder.py       |   23 -
.../330_enforce_mitaka_online_migrations.py        |   55 -
.../versions/331_add_tag_to_vifs_and_bdm.py        |   47 -
.../migrate_repo/versions/332_keypair_in_extra.py  |   28 -
.../versions/333_add_console_auth_tokens_table.py  |   50 -
.../versions/334_device_metadata_in_extra.py       |   28 -
.../migrate_repo/versions/335_placeholder.py       |   23 -
.../migrate_repo/versions/336_placeholder.py       |   23 -
.../migrate_repo/versions/337_placeholder.py       |   23 -
.../migrate_repo/versions/338_placeholder.py       |   23 -
.../migrate_repo/versions/339_placeholder.py       |   23 -
.../migrate_repo/versions/340_placeholder.py       |   23 -
.../migrate_repo/versions/341_placeholder.py       |   23 -
.../migrate_repo/versions/342_placeholder.py       |   23 -
.../migrate_repo/versions/343_placeholder.py       |   23 -
.../migrate_repo/versions/344_placeholder.py       |   23 -
.../345_require_online_migration_completion.py     |   68 -
.../versions/346_remove_scheduled_at_column.py     |   29 -
.../versions/347_add_updated_at_index.py           |   56 -
.../migrate_repo/versions/348_placeholder.py       |   23 -
.../migrate_repo/versions/349_placeholder.py       |   23 -
.../migrate_repo/versions/350_placeholder.py       |   23 -
.../migrate_repo/versions/351_placeholder.py       |   23 -
.../migrate_repo/versions/352_placeholder.py       |   23 -
.../migrate_repo/versions/353_placeholder.py       |   23 -
.../migrate_repo/versions/354_placeholder.py       |   23 -
.../migrate_repo/versions/355_placeholder.py       |   23 -
.../migrate_repo/versions/356_placeholder.py       |   23 -
.../migrate_repo/versions/357_placeholder.py       |   23 -
.../migrate_repo/versions/358_bdm_attachment_id.py |   28 -
.../migrate_repo/versions/359_add_service_uuid.py  |   33 -
.../versions/360_add_compute_node_mapped.py        |   24 -
.../versions/361_add_compute_nodes_uuid_index.py   |   41 -
.../versions/362_add_pci_devices_uuid.py           |   36 -
.../migrate_repo/versions/363_placeholder.py       |   23 -
.../migrate_repo/versions/364_placeholder.py       |   23 -
.../migrate_repo/versions/365_placeholder.py       |   23 -
.../migrate_repo/versions/366_placeholder.py       |   23 -
.../migrate_repo/versions/367_placeholder.py       |   23 -
.../migrate_repo/versions/368_placeholder.py       |   23 -
.../migrate_repo/versions/369_placeholder.py       |   23 -
.../migrate_repo/versions/370_placeholder.py       |   23 -
.../migrate_repo/versions/371_placeholder.py       |   23 -
.../migrate_repo/versions/372_placeholder.py       |   23 -
.../migrate_repo/versions/373_migration_uuid.py    |   27 -
.../migrate_repo/versions/374_bdm_uuid.py          |   35 -
.../375_add_access_url_to_console_auth_tokens.py   |   28 -
.../versions/376_add_console_auth_tokens_index.py  |   29 -
.../377_add_migrations_updated_at_index.py         |   46 -
.../378_add_instance_actions_updated_at_index.py   |   46 -
.../migrate_repo/versions/379_placeholder.py       |   22 -
.../migrate_repo/versions/380_placeholder.py       |   22 -
.../migrate_repo/versions/381_placeholder.py       |   22 -
.../migrate_repo/versions/382_placeholder.py       |   22 -
.../migrate_repo/versions/383_placeholder.py       |   22 -
.../migrate_repo/versions/384_placeholder.py       |   22 -
.../migrate_repo/versions/385_placeholder.py       |   22 -
.../migrate_repo/versions/386_placeholder.py       |   22 -
.../migrate_repo/versions/387_placeholder.py       |   22 -
.../migrate_repo/versions/388_placeholder.py       |   22 -
.../versions/389_add_aggregate_metadata_index.py   |   44 -
.../migrate_repo/versions/390_add_trusted_certs.py |   32 -
.../versions/391_add_volume_type_to_bdm.py         |   32 -
.../migrate_repo/versions/392_placeholder.py       |   22 -
.../migrate_repo/versions/393_placeholder.py       |   22 -
.../migrate_repo/versions/394_placeholder.py       |   22 -
.../migrate_repo/versions/395_placeholder.py       |   22 -
.../migrate_repo/versions/396_placeholder.py       |   22 -
.../versions/397_migrations_cross_cell_move.py     |   24 -
.../migrate_repo/versions/398_add_vpmems.py        |   31 -
.../versions/399_add_instances_hidden.py           |   28 -
.../versions/400_enforce_service_uuid.py           |   33 -
...401_add_user_id_and_project_id_to_migrations.py |   27 -
.../migrate_repo/versions/402_add_resources.py     |   31 -
.../versions/{216_havana.py => 402_train.py}       | 1004 +++---
.../versions/413_placeholder.py}                   |    0
.../versions/414_placeholder.py}                   |    0
.../versions/415_placeholder.py}                   |    0
.../versions/416_placeholder.py}                   |    0
.../versions/417_placeholder.py}                   |    0
nova/db/sqlalchemy/migration.py                    |   37 +-
nova/db/sqlalchemy/models.py                       |    4 +
nova/exception.py                                  |   79 +-
nova/exception_wrapper.py                          |   31 +-
nova/hacking/checks.py                             |   17 +
nova/image/glance.py                               |   29 +-
nova/network/constants.py                          |    2 +
nova/network/model.py                              |   32 +-
nova/network/neutron.py                            |  120 +-
nova/network/os_vif_util.py                        |    2 +-
nova/network/security_group_api.py                 |   33 +-
nova/notifications/__init__.py                     |    2 +-
nova/notifications/base.py                         |   75 +-
nova/notifications/objects/image.py                |    4 +-
nova/notifications/objects/instance.py             |    3 +
nova/notifications/objects/request_spec.py         |    3 +-
nova/objects/__init__.py                           |    1 -
nova/objects/agent.py                              |   83 -
nova/objects/bandwidth_usage.py                    |    5 +-
nova/objects/base.py                               |    3 +-
nova/objects/block_device.py                       |   19 +-
nova/objects/build_request.py                      |    3 +-
nova/objects/cell_mapping.py                       |    3 +-
nova/objects/console_auth_token.py                 |    3 +-
nova/objects/fields.py                             |   32 +-
nova/objects/image_meta.py                         |   24 +-
nova/objects/instance.py                           |    4 -
nova/objects/instance_action.py                    |    4 +-
nova/objects/instance_mapping.py                   |    3 +-
nova/objects/instance_numa.py                      |    5 +-
nova/objects/instance_pci_requests.py              |    9 +-
nova/objects/migrate_data.py                       |    4 +-
nova/objects/numa.py                               |   24 +-
nova/objects/pci_device.py                         |  114 +-
nova/objects/pci_device_pool.py                    |    3 +-
nova/objects/request_spec.py                       |   89 +-
nova/objects/service.py                            |   18 +-
nova/pci/devspec.py                                |    4 +-
nova/pci/manager.py                                |   71 +-
nova/pci/request.py                                |   17 +-
nova/pci/stats.py                                  |  348 +-
nova/pci/utils.py                                  |    5 +-
nova/policies/__init__.py                          |    2 -
nova/policies/admin_actions.py                     |   11 -
nova/policies/agents.py                            |  108 -
nova/policy.py                                     |   25 +-
nova/privsep/fs.py                                 |   14 +-
nova/privsep/libvirt.py                            |    5 -
nova/privsep/path.py                               |   22 -
nova/rpc.py                                        |   12 +-
nova/scheduler/client/report.py                    |  167 +-
nova/scheduler/driver.py                           |    4 -
nova/scheduler/filter_scheduler.py                 |    1 -
.../filters/compute_capabilities_filter.py         |    3 +-
nova/scheduler/filters/json_filter.py              |    3 +-
nova/scheduler/filters/utils.py                    |    3 +-
nova/scheduler/host_manager.py                     |    4 +-
nova/scheduler/manager.py                          |   16 +-
nova/scheduler/request_filter.py                   |  101 +-
nova/scheduler/utils.py                            |  247 +-
nova/service.py                                    |    8 +
nova/servicegroup/drivers/db.py                    |    3 +-
nova/storage/rbd_utils.py                          |   40 +-
nova/test.py                                       |   36 +-
.../admin-actions-reset-network.json.tpl           |    3 -
.../v2.88/hypervisors-detail-resp.json.tpl         |   25 +
.../hypervisors-detail-with-servers-resp.json.tpl  |   29 +
.../v2.88/hypervisors-list-resp.json.tpl           |   16 +
.../v2.88/hypervisors-search-resp.json.tpl         |   10 +
.../v2.88/hypervisors-show-resp.json.tpl           |   17 +
.../hypervisors-show-with-servers-resp.json.tpl    |   27 +
.../v2.88/hypervisors-with-servers-resp.json.tpl   |   20 +
.../hypervisors-without-servers-resp.json.tpl      |   10 +
.../test_instance_usage_audit_log.py               |    3 +-
.../functional/libvirt/test_numa_live_migration.py |  115 +-
.../functional/libvirt/test_pci_sriov_servers.py   |  862 ++++-
.../functional/libvirt/test_report_cpu_traits.py   |    4 +-
.../functional/regressions/test_bug_1595962.py     |    1 -
.../functional/regressions/test_bug_1669054.py     |   11 +-
.../functional/regressions/test_bug_1702454.py     |   15 +-
.../functional/regressions/test_bug_1713783.py     |    9 +-
.../functional/regressions/test_bug_1764883.py     |    9 +-
.../functional/regressions/test_bug_1794996.py     |    7 +-
.../functional/regressions/test_bug_1815153.py     |    8 +-
.../functional/regressions/test_bug_1823370.py     |    8 +-
.../functional/regressions/test_bug_1888395.py     |    6 +-
.../functional/regressions/test_bug_1896463.py     |  222 ++
.../functional/regressions/test_bug_1899649.py     |   99 +
.../functional/regressions/test_bug_1899835.py     |  106 +
.../functional/regressions/test_bug_1902925.py     |   44 +
.../functional/regressions/test_bug_1908075.py     |   96 +
.../functional/regressions/test_bug_1909120.py     |   57 +
.../functional/regressions/test_bug_1914777.py     |  138 +
.../test_conf_max_attach_disk_devices.py           |    4 +-
.../api/openstack/compute/test_admin_actions.py    |   16 +-
.../api/openstack/compute/test_admin_password.py   |    4 +-
.../unit/api/openstack/compute/test_agents.py      |  431 ---
.../openstack/compute/test_attach_interfaces.py    |    3 +-
.../api/openstack/compute/test_baremetal_nodes.py  |    3 +-
.../api/openstack/compute/test_create_backup.py    |    3 +-
.../unit/api/openstack/compute/test_evacuate.py    |   12 +-
.../openstack/compute/test_extended_hypervisors.py |  120 -
.../api/openstack/compute/test_extended_ips.py     |    3 +-
.../api/openstack/compute/test_extended_ips_mac.py |    3 +-
.../api/openstack/compute/test_flavor_manage.py    |    7 +-
.../unit/api/openstack/compute/test_flavors.py     |    3 +-
.../openstack/compute/test_hypervisor_status.py    |   91 -
.../unit/api/openstack/compute/test_hypervisors.py |  527 ++-
.../unit/api/openstack/compute/test_images.py      |    2 +-
.../api/openstack/compute/test_instance_actions.py |   17 +-
.../unit/api/openstack/compute/test_limits.py      |    5 +-
.../unit/api/openstack/compute/test_lock_server.py |    7 +-
.../api/openstack/compute/test_migrate_server.py   |   60 +-
.../unit/api/openstack/compute/test_migrations.py  |   17 +-
.../unit/api/openstack/compute/test_rescue.py      |    2 +
.../api/openstack/compute/test_security_groups.py  |    5 +-
.../api/openstack/compute/test_server_actions.py   |   28 +-
.../compute/test_server_external_events.py         |    4 +-
.../api/openstack/compute/test_server_groups.py    |   12 +-
.../api/openstack/compute/test_server_metadata.py  |   13 +-
.../openstack/compute/test_server_reset_state.py   |   28 +-
.../openstack/compute/test_server_start_stop.py    |    5 +-
.../unit/api/openstack/compute/test_servers.py     |  103 +-
.../unit/api/openstack/compute/test_services.py    |   13 +-
.../unit/api/openstack/compute/test_shelve.py      |   26 +-
.../openstack/compute/test_simple_tenant_usage.py  |    1 -
.../api/openstack/compute/test_suspend_server.py   |   37 +-
.../unit/api/openstack/compute/test_volumes.py     |   48 +-
.../api/validation/extra_specs/test_validators.py  |    6 +
.../conductor/tasks/test_cross_cell_migrate.py     |   10 +-
.../unit/conductor/tasks/test_live_migrate.py      |   17 +-
.../notifications/objects/test_notification.py     |    4 +-
.../filters/test_compute_capabilities_filters.py   |   12 +-
.../filters/test_pci_passthrough_filters.py        |    3 +-
.../unit/scheduler/weights/test_weights_pci.py     |    2 +-
.../unit/virt/hyperv/test_serialconsoleops.py      |    3 +-
.../unit/virt/libvirt/test_machine_type_utils.py   |  460 +++
nova/utils.py                                      |  121 +-
nova/version.py                                    |   16 +-
nova/virt/configdrive.py                           |    3 +-
nova/virt/disk/mount/nbd.py                        |    5 +-
nova/virt/disk/vfs/api.py                          |   35 +-
nova/virt/disk/vfs/guestfs.py                      |    6 +-
nova/virt/disk/vfs/localfs.py                      |  147 -
nova/virt/driver.py                                |  146 +-
nova/virt/fake.py                                  |   17 -
nova/virt/hardware.py                              |   91 +-
nova/virt/hyperv/constants.py                      |    1 +
nova/virt/hyperv/driver.py                         |    1 +
nova/virt/hyperv/hostops.py                        |    2 +-
nova/virt/hyperv/pathutils.py                      |    3 +-
nova/virt/hyperv/serialconsoleops.py               |    3 +-
nova/virt/hyperv/vmops.py                          |    6 +-
nova/virt/hyperv/volumeops.py                      |    9 +-
nova/virt/imagecache.py                            |   15 +-
nova/virt/ironic/driver.py                         |  104 +-
nova/virt/libvirt/blockinfo.py                     |   59 +-
nova/virt/libvirt/config.py                        |  221 +-
nova/virt/libvirt/designer.py                      |   20 +-
nova/virt/libvirt/driver.py                        | 1566 ++++----
nova/virt/libvirt/event.py                         |   41 +
nova/virt/libvirt/guest.py                         |   96 +-
nova/virt/libvirt/host.py                          |  566 ++-
nova/virt/libvirt/imagebackend.py                  |   26 +-
nova/virt/libvirt/imagecache.py                    |   43 +-
nova/virt/libvirt/machine_type_utils.py            |  226 ++
nova/virt/libvirt/migration.py                     |    8 +-
nova/virt/libvirt/storage/lvm.py                   |    3 +-
nova/virt/libvirt/utils.py                         |   68 +-
nova/virt/libvirt/vif.py                           |   43 +-
nova/virt/libvirt/volume/mount.py                  |    3 +-
nova/virt/libvirt/volume/quobyte.py                |    3 +-
nova/virt/libvirt/volume/remotefs.py               |    5 +-
nova/virt/libvirt/volume/volume.py                 |   13 +-
nova/virt/powervm/driver.py                        |    4 +-
nova/virt/powervm/vif.py                           |    3 +-
nova/virt/powervm/vm.py                            |    7 +-
nova/virt/powervm/volume/fcvscsi.py                |    3 +-
nova/virt/vmwareapi/vmops.py                       |    7 +-
nova/virt/zvm/driver.py                            |    3 +-
nova/virt/zvm/utils.py                             |   13 +-
nova/volume/cinder.py                              |   19 +-
playbooks/ceph/glance-copy-policy.yaml             |    7 +-
playbooks/nova-live-migration/post-run.yaml        |   10 +
...t_bus-image-metadata-prop-059bea459dec618e.yaml |   10 +
...allow-disabling-cpu-flags-cc861a3bdfffadf8.yaml |   13 +
...borg-rebuild-and-evacuate-97bba59988b8b072.yaml |   12 +
...ibvirt-driver-ip-metadata-8754c623dbd13126.yaml |    7 +
...uestfs-injection-fallback-2bd22422df05d99d.yaml |   41 +
.../notes/bug-1581977-310e5f218ccb1d16.yaml        |   24 +
...61-pci-deivce-type-update-c407a66fd37f6405.yaml |   12 +
.../notes/bug-1894804-bef8703f8364f9af.yaml        |   11 +
.../notes/bug-1911924-6e93d8a5038d18c1.yaml        |   10 +
.../notes/bug_1902925-351f563340a1e9a5.yaml        |   11 +
.../notes/bug_1905701-fdc7402ffe70d104.yaml        |   13 +
...s-having-resource-request-a8e1029ef5983793.yaml |    9 +
...-api-unexpected-exception-1bfc5e174ee5b6a7.yaml |    7 +
...-tunnelled-live-migration-81c06a04627724ec.yaml |   16 +
...not-supported-by-eventlet-b8adf73ed9e14817.yaml |    9 +
.../drop-libvirt-uml-support-8ba9311b4cfc8ca6.yaml |    5 +
.../drop-libvirt-xen-support-aef7e97b8491af69.yaml |    9 +
...image-type-exclusion-list-dac61a747a1140a3.yaml |    9 +
...libvirt-no-usb-controller-2556e3f0881a538f.yaml |    7 +
...ange-default-machine-type-bf86b4973c4dee4c.yaml |   53 +
...and-disable_native_luksv1-39680763607b5a59.yaml |   13 +
.../notes/microversion-2-88-7063636ed9c11a5d.yaml  |   33 +
...port-numa-affinity-policy-f51a74065a1e4369.yaml |   15 +
...services-with-old-compute-fc80b4ff58a2aaea.yaml |    7 +
.../notes/rbd-hyperv-support-672a34b1d87e68eb.yaml |    4 +
.../remove-customer-filters-95ab8c7a3aff058d.yaml  |   14 +
...ibvirt-use_usb_tablet-opt-b01058905240b8ce.yaml |    6 +
...llowed_direct_url_schemes-93d34d95dd84d2c8.yaml |    5 +
...b-ironic_flavor_migration-810e75def824d7bb.yaml |    9 +
...b-null_instance_uuid_scan-f34494b316ff181c.yaml |    6 +
.../remove-xenapi-driver-194756049f22dc9e.yaml     |   26 +-
.../remove_bindir_option-dd164cd623a325b6.yaml     |    5 +
.../routed_networks_filter-3d274e827449a144.yaml   |   13 +
...-pci-numa-affinity-policy-70b95b57b9f8f0c4.yaml |   11 +
...face-attach-with-qos-port-22eb452202eb92fd.yaml |    5 +
...port-sys.argv-in-wsgi-app-2dc5006f9e9e5f9e.yaml |    9 +
...g-vifs-in-resize_instance-fcd98ea44e4b8725.yaml |   12 +
releasenotes/notes/vdpa-cc2300d2c46c150b.yaml      |   43 +
...laby-libvirt-version-bump-6fd35d03d7f3df28.yaml |   13 +
.../notes/wallaby-prelude-94fb3c1494afebbb.yaml    |   46 +
releasenotes/source/index.rst                      |    1 +
releasenotes/source/victoria.rst                   |    6 +
requirements.txt                                   |   39 +-
roles/run-evacuate-hook/README.rst                 |    1 +
.../files/setup_evacuate_resources.sh              |   34 +
roles/run-evacuate-hook/files/test_evacuate.sh     |   55 +
.../files/test_negative_evacuate.sh                |   37 +
roles/run-evacuate-hook/tasks/main.yaml            |   82 +
setup.cfg                                          |   19 +-
test-requirements.txt                              |    2 +-
tools/check-cherry-picks.sh                        |    7 +-
tools/generate-schemas                             |  123 +
tox.ini                                            |   53 +-
810 files changed, 24853 insertions(+), 25151 deletions(-)


Requirements updates
--------------------

diff --git a/requirements.txt b/requirements.txt
index e62366561e..96ec2ef4ad 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -5 +5 @@
-pbr!=2.1.0,>=2.0.0 # Apache-2.0
+pbr>=5.5.1 # Apache-2.0
@@ -8 +8 @@ decorator>=4.1.0 # BSD
-eventlet>=0.22.0 # MIT
+eventlet>=0.30.1 # MIT
@@ -20 +20 @@ Paste>=2.0.2 # MIT
-PrettyTable<0.8,>=0.7.1 # BSD
+PrettyTable>=0.7.1 # BSD
@@ -31,2 +31 @@ python-glanceclient>=2.8.0 # Apache-2.0
-requests>=2.23.0 # Apache-2.0
-six>=1.11.0 # MIT
+requests>=2.25.1 # Apache-2.0
@@ -36 +35 @@ oslo.cache>=1.26.0 # Apache-2.0
-oslo.concurrency>=3.29.0 # Apache-2.0
+oslo.concurrency>=4.4.0 # Apache-2.0
@@ -38,2 +37,2 @@ oslo.config>=6.8.0 # Apache-2.0
-oslo.context>=2.22.0 # Apache-2.0
-oslo.log>=3.36.0 # Apache-2.0
+oslo.context>=3.1.1 # Apache-2.0
+oslo.log>=4.4.0 # Apache-2.0
@@ -41,3 +40,3 @@ oslo.reports>=1.18.0 # Apache-2.0
-oslo.serialization!=2.19.1,>=2.21.1 # Apache-2.0
-oslo.upgradecheck>=0.1.1
-oslo.utils>=4.5.0 # Apache-2.0
+oslo.serialization>=4.1.0 # Apache-2.0
+oslo.upgradecheck>=1.3.0
+oslo.utils>=4.8.0 # Apache-2.0
@@ -47,4 +46,4 @@ oslo.messaging>=10.3.0 # Apache-2.0
-oslo.policy>=3.4.0 # Apache-2.0
-oslo.privsep>=1.33.2 # Apache-2.0
-oslo.i18n>=3.15.3 # Apache-2.0
-oslo.service>=1.40.1 # Apache-2.0
+oslo.policy>=3.6.0 # Apache-2.0
+oslo.privsep>=2.4.0 # Apache-2.0
+oslo.i18n>=5.0.1 # Apache-2.0
+oslo.service>=2.5.0 # Apache-2.0
@@ -55 +54 @@ oslo.versionedobjects>=1.35.0 # Apache-2.0
-os-brick>=3.1.0 # Apache-2.0
+os-brick>=4.3.1 # Apache-2.0
@@ -57 +56 @@ os-resource-classes>=0.4.0 # Apache-2.0
-os-traits>=2.4.0 # Apache-2.0
+os-traits>=2.5.0 # Apache-2.0
@@ -59 +58 @@ os-vif>=1.14.0 # Apache-2.0
-os-win>=4.2.0 # Apache-2.0
+os-win>=5.4.0 # Apache-2.0
@@ -69 +68 @@ taskflow>=3.8.0 # Apache-2.0
-python-dateutil>=2.5.3 # BSD
+python-dateutil>=2.7.0 # BSD
@@ -74 +73 @@ dataclasses>=0.7;python_version=='3.6'  # Apache 2.0 License
-PyYAML>=3.13 # MIT
+PyYAML>=5.1 # MIT
diff --git a/test-requirements.txt b/test-requirements.txt
index 98b2a0e2bc..9f695c6124 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -11 +11 @@ mock>=3.0.0 # BSD
-psycopg2>=2.8 # LGPL/ZPL
+psycopg2-binary>=2.8 # LGPL/ZPL






More information about the Release-announce mailing list