[release-announce] nova 25.0.0 (yoga)

no-reply at openstack.org no-reply at openstack.org
Wed Mar 30 12:04:51 UTC 2022


We are stoked to announce the release of:

nova 25.0.0: Cloud computing fabric controller

This release is part of the yoga 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 24.0.0.0rc1..25.0.0
-----------------------------------

187ef95592 Revert "Adds regression test for bug LP#1944619"
219520d9ce Clean up when queued live migration aborted
1ad287bf9a Add functional tests to reproduce bug #1960412
9f1c28e4ae Add the Yoga prelude section
fe1ebe69f3 reenable greendns in nova.
3fd7e94893 Fix migration with remote-managed ports & add FT
5505b6f438 Follow up for unified limits
9ec6afe893 Enable unified limits in the nova-next job
219c360dc1 Add grenade-skip-level irrelevant-files config
caf5faf556 Move file system freeze after end of mirroring
b92259e10a mention the cycle highlights in the ptl guide
42444db032 Fix unit test for oslo.context 4.1.0
e5ed77cf8b Lightos driver release note
4863f5bdf1 Update compute rpc version alias for yoga
c56710778d doc: mark the max microversion for yoga
1b2ff083eb zuul-job for Adds Pick guest CPU architecture based on host arch in libvirt driver support
f320e59a8a Add volume-rebuild support to cinder module
31ff7ce7e2 driver/secheduler/docs for Adds Pick guest CPU architecture based on host arch in libvirt driver support
79887a610b object/notification for Adds Pick guest CPU architecture based on host arch in libvirt driver support
f9c1d1163d Complete phase-1 of RBAC community-wide goal
1be007243b Separate flavor extra specs policy for server APIs
ab084d4d1d Modify remaining APIs as per RBAC new guidelines
2197290944 Add reno for unified limits
22bc841971 Update quota apis with keystone limits and usage
d80d253cf9 Add legacy limits and usage to placement unified limits
140b3b81f9 Enforce resource limits using oslo.limit
d984a6d886 Tell oslo.limit how to count nova resources
c384824683 Update quota sets APIs
ce4f796ec1 Update limit APIs
94f9e443f2 Update quota_class APIs for db and api limits
4207493829 Enforce api and db limits
3b69f959a8 Add logic to enforce local api and db limits
a0c2bd4176 Make unified limits APIs return reserved of 0
6acefc6b10 Assert quota related API behavior when noop
4fbe94a98c Add stub unified limits driver
78f02e96ed Move keypair quota error message into exception
19b7cf2170 manage: Add image_property commands
7ecdfb61a9 libvirt: Register defaults for undefined hw image properties
de110b042d Update live_migration_downtime definition
b5e2128f38 Lightbits LightOS driver
20a07ee9a6 Server actions APIs scoped to project scope
d7be635fb4 Make more project level APIs scoped to project only
6ad7890100 [nova/libvirt] Support for checking and enabling SMM when needed
60c9e3edad Convert SYSTEM_ADMIN|READER to Admin and system scope
ed1a854c90 Move rule_if_system() method to base test class
19cd4bf670 Test PROJECT_ADMIN APIs with no legacy rule case
0d71c5a1c1 neutron: Allow to spawn VMs with port without IP address
f2fcc1399b trivial: Add a white space in an error message
d5faf45e9d VMware: Support volumes backed by VStorageObject
e8380b96a0 Support use_multipath for NVME driver
419391e97d Document remote-managed port usage considerations
d43538712c Adds regression test for bug LP#1944619
c9a0c7da9b doc: Correct version for virtio-net multiqueue
95157314bd docs: Document virtio-net multiqueue
9eb116b99c Gracefull recovery when attaching volume fails
0620678344 [yoga] Add support for VNIC_REMOTE_MANAGED
c487c730d0 Filter computes without remote-managed ports early
d1e9ecb443 Add supports_remote_managed_ports capability
6294c144e7 Bump os-traits to 2.7.0
0d5f8ffc2b Introduce remote_managed tag for PCI devs
72058b7a40 Join quota exception family trees
d13412648d Fix to implement 'pack' or 'spread' VM's NUMA cells
1f71696ecc [yoga] Include pf mac and vf num in port updates
ecb5f17171 Raise InstanceNotFound on fkey constraint fail saving info cache
9111b99f73 Cleanup old resize instances dir before resize
2aa1ed5810 Update announce self workaround opt description
b00ce99dd4 skip test_tagged_attachment in nova-next
136f1deb6e docs: Follow-ups for cells v2, architecture docs
5fa6421945 VmWare: Remove unused legacy_nodename regex
eacecc2433 Move 'hw:pmu', 'hw_pmu' parsing to nova.virt.hardware
ab49f97b2c [yoga] Add PCI VPD Capability Handling
9fe4654273 api: Reject duplicate port IDs in server create
0b0f40d1b3 Revert "Revert resize: wait for events according to hybrid plug"
ded6168ad7 Add nova-ovs-hybrid-plug job
4b2aa93158 tox: Install extras
86d87be8db Move optional build dependencies to 'extras'
ff1dbb5eb4 requirements: Bump minimum testtools to 2.5.0
452913a284 Remove Python 2-specific imports
0396bba4cc requirements: Remove os-xenapi
7d2e481589 Add service version check workaround for FFU
f7af85dd74 Nova resize don't extend disk in one specific case
82c91e8cd8 Add check job for FIPS
a341851f15 Move ReaderWriterLock to the test tree
33bc5c09f5 Add fixtures to requirements
cec9e7f1f1 Remove deprecated opts from VNC conf
b88ca72c71 Update centos 8 py36 functional job nodeset to centos stream 8
887c445a7a Add wrapper for oslo.concurrency lockutils.ReaderWriterLock()
3e7b9b69e6 Test aborting queued live migration
d44e24efe2 libvirt: Add announce-self post live-migration workaround
50bf252250 Make the CellDatabases fixture work with fasteners >= 0.15
2af7eb00f5 Fill the AcceleratorRequestBindingFailed exception msg info
cb1a52a828 Re-add python 3.6 functional testing
5bb6d4c188 functional: Add reproducer for #1907775
2d4c77aa68 Fill the exception msg
4af845f067 Log which instance event was timed out
32c1044d86 [rt] Apply migration context for incoming migrations
9f296d775d Extend the reproducer for 1953359 and 1952915
890cd82b84 [doc] propose Review-Priority label for contribs
c59224d715 Reproduce bug 1953359
16f7c601b6 Reattach mdevs to guest on resume
159016a4c3 conf: Allow cinderclient and os_brick to independently log at DEBUG
40c0f7fdd9 nova-next: Deploy noVNC from source instead of packages
2bbef87e59 nova-next: Drop NOVA_USE_SERVICE_TOKEN from subnode
4a968c98c1 libvirt: Create qcow2 disks with the correct size without extending
067cd93424 block_device: Ignore VolumeAttachmentNotFound during detach
10c7e71848 Add regression test for bug #1937084
fcbba7d2ae libvirt: Ensure all volume drivers log the instance whenever possible
e853bb5718 Migrate RequestSpec.numa_topology to use pcpuset
05e8977cb2 Reproduce bug 1952941
d9190912b9 Revert project-specific APIs for servers
1850097ec1 Allow per-context rule in error messages
a21c4678c5 Make API fixture pass roles
0d7061625d Deprecate the powervm driver
9dd0070ce6 Updating tests with Yoga testing runtime
ce493273b9 Retry image download if it's corrupted
4eddcf77c9 api-ref: Adjust BFV rescue non-support note.
1241d3440b docs: Update libvirt distro support matrix for Xena
f42fb1241b Add 'hw:vif_multiqueue_enabled' flavor extra spec
3955ca4862 db: Remove unnecessary warning filters
eac61c5929 db: Remove use of 'bind' arguments
be4e01c101 db: Don't use legacy 'Row()' methods
b88ea30701 db: Don't pass strings to 'Connection.execute'
5d2399e210 db: Replace 'insert.inline' parameter with 'Insert.inline()' method
c72068d466 db: Replace use of legacy select() calling style
cd9b792ea6 db: Replace use of 'autoload' parameter
cd3e5a23c9 db: Replace use of Executable.scalar(), Executable.execute()
52bd1e51d6 tests: Enable SQLAlchemy 2.0 deprecation warnings
e28afc5647 tests: Restore - don't reset - warning filters
154ab7b2f9 Add debug log for scheduler weight calculation
43bca185fe Close Glance image if downloading failed.
af7762713f Log instance event wait times
ed3abea3b2 Apply common irrelevant_files for centos 8 job
f3d48000b1 Add autopep8 to tox and pre-commit
78e1542b80 Update Interop doc
a7bccff06b Fix interference in db unit test
063ed41174 Use ReplaceEngineFacade fixture
f024490e95 [Trival] Fix wrong microversion in TestClass name
c7ccbfe403 Refactor Database fixture
f318f822fc Remove SESSION_CONFIGURED global from DB fixture
68c970ea99 Add a WA flag waiting for vif-plugged event during reboot
5d2f2da0af Enable min pps tempest testing in nova-next
f08d9aaa04 Remove broken tempest-full-py3-opensuse15 job
7f4c7bfcc1 db: Remove nova-network models
0a213019d2 db: Remove models for removed services, features
2b02b66bae objects: Remove 'bandwidth' fields from notifications
55fe6a7644 db: Remove models that were moved to the API database
7f81cf28bf Ignore plug_vifs on the ironic driver
cfd6c6b76f nova-manage: Always get BDMs using get_by_volume_and_instance
9c2cb1fd4f Reno for qos-minimum-guaranteed-packet-rate
5725297e12 Revert "Temp disable nova-manage placement heal_allocation testing"
45e71fb9ce Temp disable nova-manage placement heal_allocation testing
90ed7e574d [nova-manage]support extended resource request
be9b022bfc Fix unit test for oslo.concurrency 4.5
7320817799 Log failed metadata retrievals
171138146a Check Nova project changes with Tobiko scenario test cases
e5a34fffdf Clean up allocations left by evacuation when deleting service
14e43f385e Avoid unbound instance_uuid var during delete
49b481ec98 Query ports with admin client to get resource_request
518b952bde Fix instance's image_ref lost on failed unshelving
6c5636baab ensure samples folder exists for microversion
78e10f5f14 Reproducer unit test for bug 1934094
ef4d759e87 docs: Add new architecture guide
13b06ebb1c docs: Add a new cells v2 document
0564006a0a docs: Add notes about IoOpsWeigher, BuildFailureWeigher
fb083138eb db: Increase timeout for migration tests
944033061c objects: Stop querying the main DB for keypairs
1f648b4f77 db: Remove legacy placement models
9657297dd6 db: Remove unused build_requests columns
a4d7f70740 db: De-duplicate list of removed table columns
60b977b76d db: Enable auto-generation of API DB migrations
61fc81a676 Prevent leaked eventlets to send notifications
4c0d3b79ef Set "cache_ok=True" in "TypeDecorator" inheriting classes
46401ef666 api: enable oslo.reports when using uWSGI
7b063e4d05 Define new functional test tox env for placement gate to run
6a15169ed9 Ensure MAC addresses characters are in the same case
cf4e516f55 zuul: Move live migration jobs back to voting
22e9d22369 fup: Refactor and simplify Cinder fixture GET volume mock
9a1cac7110 fup: Move _wait_for_volume_{attach,detach} to os-volume_attachments
6fd071b904 compute: Update volume_id within connection_info during swap_volume
ad227d7085 Update min supported service version for Yoga
674a5e8dca Add regression test for bug #1943431
d59188d5e2 nova-manage: Ensure mountpoint is passed when updating attachment
6b1e624bed Reproduce bug 1945310
b841e55321 Store old_flavor already on source host during resize
e07bb310b6 tools: Ignore bot-generated branch creation patches
558196ac46 db: Add migration to resolve shadow table discrepancies
c8dadf4af8 tests: Silence noise from database tests
3e4e4489b7 Reproduce bug 1944759
5150704b79 tests: Address some nits with database migration series
a19821bd62 tests: Walk database migrations in correct order
f6206269b7 Fix the wrong exception used to retry detach API calls
b689beeb92 Add missing __init__.py in nova/db/api
a2bedcc6fc Update contributor guide for Yoga
11f95eebea Add Python3 yoga unit tests
0bd61915ee Update master for stable/xena
9797b921d0 Add section for 'nova-manage placement audit' tool
36db6b746a neutron: Remove references to dead 'qos-queue' extension
0f7f95b917 neutron: Rework how we check for extensions
45e8fe01e4 VmWare: Use of id shadows built-in function
e07e8f342c Vmware: Fix spelling in test
1e02c81721 Revert "tox: Encode specific Python versions"
cc59698d69 libvirt: Switch the default video model from 'cirrus' to 'virtio'
7c60b27f0f Correct test error


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

.gitignore                                         |    6 +-
.pre-commit-config.yaml                            |    6 +
.zuul.yaml                                         |  193 +++-
api-ref/source/servers-actions.inc                 |    3 +-
.../common_payloads/ImageMetaPropsPayload.json     |    2 +-
.../common_payloads/InstanceExistsPayload.json     |    5 +-
.../common_payloads/InstanceUpdatePayload.json     |    5 +-
.../admin/configuration/cross-cell-resize.rst      |   61 +-
.../troubleshooting/affinity-policy-violated.rst   |    9 +-
.../admin/troubleshooting/orphaned-allocations.rst |   35 +
.../reference/libvirt-distro-support-matrix.rst    |  103 +-
gate/post_test_hook.sh                             |   67 +-
lower-constraints.txt                              |   28 +-
mypy-files.txt                                     |    2 +
nova/api/metadata/handler.py                       |    1 +
nova/api/openstack/compute/aggregates.py           |    1 +
.../openstack/compute/assisted_volume_snapshots.py |   10 +
nova/api/openstack/compute/attach_interfaces.py    |    1 +
nova/api/openstack/compute/console_auth_tokens.py  |    2 +-
nova/api/openstack/compute/deferred_delete.py      |    2 +-
nova/api/openstack/compute/hosts.py                |    1 +
nova/api/openstack/compute/keypairs.py             |    6 +-
nova/api/openstack/compute/limits.py               |    3 +-
nova/api/openstack/compute/migrate_server.py       |    2 +-
nova/api/openstack/compute/migrations.py           |    2 +-
nova/api/openstack/compute/quota_classes.py        |   20 +-
nova/api/openstack/compute/quota_sets.py           |   23 +-
.../openstack/compute/rest_api_version_history.rst |    4 +-
nova/api/openstack/compute/routes.py               |    1 +
.../openstack/compute/server_external_events.py    |    5 +
nova/api/openstack/compute/server_groups.py        |   17 +-
nova/api/openstack/compute/server_metadata.py      |    2 +-
nova/api/openstack/compute/server_password.py      |    1 +
nova/api/openstack/compute/server_topology.py      |    3 +-
nova/api/openstack/compute/servers.py              |   37 +-
nova/api/openstack/compute/shelve.py               |    6 +-
nova/api/openstack/compute/views/servers.py        |   10 +-
nova/api/openstack/compute/volumes.py              |    5 +
nova/api/openstack/wsgi_app.py                     |   18 +-
nova/api/validation/extra_specs/hw.py              |   14 +
nova/cmd/manage.py                                 |  522 +++++++---
nova/cmd/status.py                                 |   27 +-
nova/compute/api.py                                |  205 +++-
nova/compute/claims.py                             |    1 +
nova/compute/manager.py                            |  288 ++++--
nova/compute/multi_cell_list.py                    |    2 +
nova/compute/provider_tree.py                      |    1 +
nova/compute/resource_tracker.py                   |   70 +-
nova/compute/rpcapi.py                             |    1 +
nova/compute/utils.py                              |   20 +-
nova/conductor/manager.py                          |    8 +-
nova/conductor/tasks/cross_cell_migrate.py         |    3 +-
nova/conductor/tasks/live_migrate.py               |    5 +-
nova/conf/cinder.py                                |    6 +
nova/conf/compute.py                               |   17 +
nova/conf/libvirt.py                               |    7 +-
nova/conf/pci.py                                   |   27 +
nova/conf/quota.py                                 |    2 +
nova/conf/vnc.py                                   |    9 -
nova/conf/workarounds.py                           |  102 ++
nova/config.py                                     |    5 +
.../db/api/legacy_migrations/versions/067_train.py |    3 +
nova/db/api/migrations/env.py                      |   37 +-
...73d3377_remove_unused_build_requests_columns.py |   45 +
nova/db/api/models.py                              |  267 +----
nova/db/main/api.py                                |  223 +---
.../main/legacy_migrations/versions/402_train.py   |   61 +-
nova/db/main/migrations/env.py                     |   30 +-
.../16f1fbcab42b_resolve_shadow_table_diffs.py     |   62 ++
.../versions/8f2f1571d55b_initial_version.py       |   28 +-
nova/db/main/models.py                             |  746 ++------------
nova/db/types.py                                   |    2 +
nova/exception.py                                  |   94 +-
nova/filters.py                                    |    1 +
nova/hacking/checks.py                             |   29 +
nova/image/glance.py                               |   23 +-
nova/limit/__init__.py                             |    0
nova/limit/local.py                                |  234 +++++
nova/limit/placement.py                            |  219 ++++
nova/limit/utils.py                                |   22 +
nova/monkey_patch.py                               |   15 +-
nova/network/constants.py                          |   46 +-
nova/network/model.py                              |   38 +-
nova/network/neutron.py                            |  336 ++++--
nova/network/os_vif_util.py                        |    9 +
nova/notifications/base.py                         |    8 -
nova/notifications/objects/image.py                |    3 +-
nova/notifications/objects/instance.py             |   43 +-
nova/objects/__init__.py                           |    1 -
nova/objects/bandwidth_usage.py                    |  102 --
nova/objects/image_meta.py                         |    9 +-
nova/objects/instance.py                           |    3 +-
nova/objects/instance_info_cache.py                |   23 +-
nova/objects/instance_numa.py                      |   33 +-
nova/objects/keypair.py                            |   76 +-
nova/objects/migration.py                          |    3 -
nova/objects/pci_device.py                         |    6 +
nova/objects/request_spec.py                       |   12 +
nova/objects/service.py                            |    8 +-
nova/pci/devspec.py                                |  118 ++-
nova/pci/request.py                                |    1 +
nova/pci/stats.py                                  |   75 ++
nova/pci/utils.py                                  |   64 +-
nova/pci/whitelist.py                              |    2 +-
nova/policies/admin_actions.py                     |    8 +-
nova/policies/admin_password.py                    |    4 +-
nova/policies/aggregates.py                        |   18 +-
nova/policies/assisted_volume_snapshots.py         |   22 +-
nova/policies/attach_interfaces.py                 |   16 +-
nova/policies/availability_zone.py                 |    2 +-
nova/policies/baremetal_nodes.py                   |    4 +-
nova/policies/base.py                              |   68 +-
nova/policies/console_auth_tokens.py               |    4 +-
nova/policies/console_output.py                    |    4 +-
nova/policies/create_backup.py                     |    4 +-
nova/policies/deferred_delete.py                   |    8 +-
nova/policies/evacuate.py                          |    4 +-
nova/policies/extended_server_attributes.py        |    4 +-
nova/policies/flavor_access.py                     |   10 +-
nova/policies/flavor_extra_specs.py                |   35 +-
nova/policies/flavor_manage.py                     |    6 +-
nova/policies/floating_ips.py                      |   24 +-
nova/policies/hosts.py                             |   12 +-
nova/policies/hypervisors.py                       |   14 +-
nova/policies/instance_actions.py                  |   16 +-
nova/policies/instance_usage_audit_log.py          |    4 +-
nova/policies/ips.py                               |    8 +-
nova/policies/keypairs.py                          |    8 +-
nova/policies/limits.py                            |    6 +-
nova/policies/lock_server.py                       |   12 +-
nova/policies/migrate_server.py                    |    8 +-
nova/policies/migrations.py                        |    4 +-
nova/policies/multinic.py                          |    8 +-
nova/policies/networks.py                          |    8 +-
nova/policies/pause_server.py                      |    8 +-
nova/policies/quota_class_sets.py                  |    4 +-
nova/policies/quota_sets.py                        |   25 +-
nova/policies/remote_consoles.py                   |    4 +-
nova/policies/rescue.py                            |    8 +-
nova/policies/security_groups.py                   |   40 +-
nova/policies/server_diagnostics.py                |    4 +-
nova/policies/server_external_events.py            |   12 +-
nova/policies/server_groups.py                     |   25 +-
nova/policies/server_metadata.py                   |   24 +-
nova/policies/server_password.py                   |    8 +-
nova/policies/server_tags.py                       |   24 +-
nova/policies/server_topology.py                   |    8 +-
nova/policies/servers.py                           |  157 +--
nova/policies/servers_migrations.py                |   16 +-
nova/policies/services.py                          |    6 +-
nova/policies/shelve.py                            |   12 +-
nova/policies/simple_tenant_usage.py               |    8 +-
nova/policies/suspend_server.py                    |    8 +-
nova/policies/tenant_networks.py                   |    8 +-
nova/policies/volumes.py                           |   40 +-
nova/policies/volumes_attachments.py               |   31 +-
nova/quota.py                                      |  164 ++-
.../notes/uwsgi-gmr-c00631db79836340.yaml          |    6 +
nova/scheduler/client/report.py                    |   56 +-
nova/scheduler/host_manager.py                     |    8 +-
nova/scheduler/request_filter.py                   |   30 +
nova/scheduler/utils.py                            |    9 +
nova/service.py                                    |    8 +-
nova/storage/rbd_utils.py                          |    2 +
nova/test.py                                       |    8 +-
.../libvirt/test_device_bus_migration.py           |  407 ++++++++
.../functional/libvirt/test_live_migration.py      |  212 ++++
.../functional/libvirt/test_pci_sriov_servers.py   |  658 +++++++++++-
.../functional/regressions/test_bug_1718512.py     |    1 +
.../functional/regressions/test_bug_1719730.py     |    1 +
.../functional/regressions/test_bug_1746483.py     |    1 +
.../functional/regressions/test_bug_1764556.py     |    1 +
.../functional/regressions/test_bug_1780373.py     |    1 +
.../functional/regressions/test_bug_1781286.py     |    2 +
.../functional/regressions/test_bug_1839560.py     |    1 +
.../functional/regressions/test_bug_1849409.py     |    1 +
.../functional/regressions/test_bug_1852458.py     |    1 +
.../functional/regressions/test_bug_1888395.py     |    2 +-
.../functional/regressions/test_bug_1893284.py     |    1 +
.../functional/regressions/test_bug_1894966.py     |    1 +
.../functional/regressions/test_bug_1896463.py     |    8 +
.../functional/regressions/test_bug_1914777.py     |    1 +
.../functional/regressions/test_bug_1937084.py     |   77 ++
.../functional/regressions/test_bug_1943431.py     |  151 +++
.../functional/test_servers_resource_request.py    |  155 ++-
.../unit/api/openstack/compute/microversions.py    |    2 +-
.../openstack/compute/test_attach_interfaces.py    |    1 +
.../unit/api/openstack/compute/test_keypairs.py    |  127 +--
.../unit/api/openstack/compute/test_limits.py      |  157 ++-
.../api/openstack/compute/test_quota_classes.py    |  222 ++++
.../unit/api/openstack/compute/test_quotas.py      |  476 +++++++++
.../openstack/compute/test_server_group_quotas.py  |  104 +-
.../unit/api/openstack/compute/test_servers.py     |   35 +-
.../unit/api/openstack/compute/test_volumes.py     |    1 +
.../{test_compute_utils.py => test_utils.py}       |   10 +-
.../conductor/tasks/test_cross_cell_migrate.py     |    4 +-
.../unit/conductor/tasks/test_live_migrate.py      |    6 +-
.../notifications/objects/test_notification.py     |    7 +-
.../policies/test_assisted_volume_snapshots.py     |   65 +-
.../unit/policies/test_console_auth_tokens.py      |   59 +-
.../unit/policies/test_instance_usage_audit_log.py |   75 +-
.../unit/policies/test_server_external_events.py   |   49 +-
.../unit/policies/test_simple_tenant_usage.py      |  102 +-
nova/utils.py                                      |    1 +
nova/virt/block_device.py                          |   13 +-
nova/virt/disk/vfs/guestfs.py                      |    1 +
nova/virt/driver.py                                |    2 +
nova/virt/fake.py                                  |   12 +
nova/virt/hardware.py                              |  169 ++-
nova/virt/hyperv/driver.py                         |    1 +
nova/virt/hyperv/serialconsolehandler.py           |    1 +
nova/virt/ironic/driver.py                         |   23 +-
nova/virt/libvirt/config.py                        |  120 ++-
nova/virt/libvirt/driver.py                        |  556 +++++++---
nova/virt/libvirt/event.py                         |    1 +
nova/virt/libvirt/guest.py                         |   10 +
nova/virt/libvirt/host.py                          |  112 +-
nova/virt/libvirt/imagebackend.py                  |   25 +-
nova/virt/libvirt/migration.py                     |   11 +-
nova/virt/libvirt/utils.py                         |    4 +
nova/virt/libvirt/vif.py                           |   26 +-
nova/virt/libvirt/volume/fibrechannel.py           |    4 +-
nova/virt/libvirt/volume/iscsi.py                  |    4 +-
nova/virt/libvirt/volume/iser.py                   |    1 +
nova/virt/libvirt/volume/lightos.py                |   63 ++
nova/virt/libvirt/volume/mount.py                  |   26 +-
nova/virt/libvirt/volume/net.py                    |    1 +
nova/virt/libvirt/volume/nvme.py                   |    8 +-
nova/virt/libvirt/volume/quobyte.py                |   12 +-
nova/virt/libvirt/volume/scaleio.py                |    4 +-
nova/virt/libvirt/volume/volume.py                 |    3 +
nova/virt/powervm/driver.py                        |    9 +
nova/virt/vmwareapi/constants.py                   |    3 +-
nova/virt/vmwareapi/driver.py                      |    9 +-
nova/virt/vmwareapi/host.py                        |    1 +
nova/virt/vmwareapi/vm_util.py                     |   67 +-
nova/virt/vmwareapi/vmops.py                       |    4 +-
nova/virt/vmwareapi/volumeops.py                   |   65 ++
nova/virt/zvm/driver.py                            |    1 +
nova/volume/cinder.py                              |   21 +-
nova/weights.py                                    |   41 +-
playbooks/nova-emulation/pre.yaml                  |   35 +
.../add-vmware-fcd-support-822edccb0e38bc37.yaml   |    5 +
...-self-post-live-migration-936721b1ab887514.yaml |    8 +
...-vm-with-unaddressed-port-4cb05bb6dc859d98.yaml |    3 +
...st-arch-in-libvirt-driver-f087c3799d388bb6.yaml |   10 +
...policy-defaults-refresh-2-473c70f641f9f397.yaml |   30 +
.../notes/bp-unified-limits-656b55863df22e16.yaml  |   43 +
...reject-duplicate-port-ids-a38739d67d5d7c5d.yaml |    7 +
.../notes/bug-1829479-cd2db21526965e6d.yaml        |    8 +
...-event-during-hard-reboot-fb491f6a68370bab.yaml |   18 +
.../notes/bug-1948705-ff80ae392c525475.yaml        |    6 +
...c-numa-topology-migration-c97dbd51b3c6c116.yaml |    9 +
.../notes/bug-1958636-smm-check-and-enable.yaml    |    7 +
...anup-instances-dir-resize-56282e1b436a4908.yaml |    6 +
.../notes/bug-1960401-504eb255253d966a.yaml        |    8 +
...-retry-corrupted-download-5798b0df44a00e4e.yaml |    7 +
.../notes/cinder-debug-c522618d82987971.yaml       |    6 +
.../deprecate-powervm-yoga-d368b43ba86eb830.yaml   |    6 +
...-field-from-notifications-d98812a3256cd573.yaml |    9 +
...ra-sorting-for-host-cells-c03e37de1e57043b.yaml |   10 +
...-restart-port-attachments-3282e9ea051561d4.yaml |   11 +
...-multiqueue-configuration-41e2cbc4ca024682.yaml |    8 +
releasenotes/notes/greendns-34df7f9fba952bcd.yaml  |   14 +
releasenotes/notes/lightos-fcafefdfd0939316.yaml   |    8 +
...ova-manage-image-property-26b2e3eaa2ef343b.yaml |   17 +
.../notes/pci-vpd-capability-0d8039629db4afb8.yaml |   20 +
...fined-hw-image-properties-d86bcf99f4610239.yaml |   15 +
...emove-deprecated-vnc-opts-c2bbcbf0fb777593.yaml |   10 +
...ueue-vmware-nsx-extension-208d72da23e7ae49.yaml |    7 +
...ups-neutron-api-extension-70a902b79f735cff.yaml |   17 +
.../notes/use-multipath-0a0aa2b479e02370.yaml      |    7 +
...as-default-display-device-5341d3d5180036e2.yaml |    9 +
.../vnic-type-remote-managed-b90cacf1c91df22b.yaml |   27 +
.../notes/yoga-prelude-31dd83eb18c789f6.yaml       |   49 +
releasenotes/source/index.rst                      |    1 +
releasenotes/source/xena.rst                       |    6 +
requirements.txt                                   |   29 +-
setup.cfg                                          |    9 +
test-requirements.txt                              |    5 +-
tools/check-cherry-picks.sh                        |    5 +
tox.ini                                            |   64 +-
471 files changed, 20540 insertions(+), 10268 deletions(-)


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

diff --git a/requirements.txt b/requirements.txt
index a8bed744fb..1a83a0813a 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1 +1 @@
-pbr>=5.5.1 # Apache-2.0
+pbr>=5.8.0 # Apache-2.0
@@ -11,2 +10,0 @@ WebOb>=1.8.2 # MIT
-# NOTE(mriedem): greenlet 0.4.14 does not work with older versions of gcc on
-# ppc64le systems, see https://github.com/python-greenlet/greenlet/issues/136.
@@ -32 +30 @@ oslo.cache>=1.26.0 # Apache-2.0
-oslo.concurrency>=4.4.0 # Apache-2.0
+oslo.concurrency>=4.5.0 # Apache-2.0
@@ -34,2 +32,3 @@ oslo.config>=8.6.0 # Apache-2.0
-oslo.context>=3.1.1 # Apache-2.0
-oslo.log>=4.4.0 # Apache-2.0
+oslo.context>=3.4.0 # Apache-2.0
+oslo.log>=4.6.1 # Apache-2.0
+oslo.limit>=1.5.0 # Apache-2.0
@@ -37 +36 @@ oslo.reports>=1.18.0 # Apache-2.0
-oslo.serialization>=4.1.0 # Apache-2.0
+oslo.serialization>=4.2.0 # Apache-2.0
@@ -39 +38 @@ oslo.upgradecheck>=1.3.0
-oslo.utils>=4.8.0 # Apache-2.0
+oslo.utils>=4.12.1 # Apache-2.0
@@ -44,3 +43,3 @@ oslo.policy>=3.7.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
+oslo.privsep>=2.6.2 # Apache-2.0
+oslo.i18n>=5.1.0 # Apache-2.0
+oslo.service>=2.8.0 # Apache-2.0
@@ -51 +50 @@ oslo.versionedobjects>=1.35.0 # Apache-2.0
-os-brick>=4.3.1 # Apache-2.0
+os-brick>=5.2 # Apache-2.0
@@ -53 +52 @@ os-resource-classes>=1.1.0 # Apache-2.0
-os-traits>=2.5.0 # Apache-2.0
+os-traits>=2.7.0 # Apache-2.0
@@ -55 +53,0 @@ os-vif>=1.15.2 # Apache-2.0
-os-win>=5.4.0 # Apache-2.0
@@ -58 +55,0 @@ microversion-parse>=0.2.1 # Apache-2.0
-os-xenapi>=0.3.4 # Apache-2.0
@@ -61 +57,0 @@ cursive>=0.2.1 # Apache-2.0
-pypowervm>=1.1.15 # Apache-2.0
@@ -66 +61,0 @@ python-dateutil>=2.7.0 # BSD
-zVMCloudConnector>=1.3.0;sys_platform!='win32'  # Apache 2.0 License
diff --git a/test-requirements.txt b/test-requirements.txt
index 44cb2bacf7..3194e9dd66 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -22 +22 @@ testscenarios>=0.4 # Apache-2.0/BSD
-testtools>=2.2.0 # MIT
+testtools>=2.5.0 # MIT
@@ -26,3 +25,0 @@ wsgi-intercept>=1.7.0 # MIT License
-
-# vmwareapi driver specific dependencies
-oslo.vmware>=3.6.0 # Apache-2.0






More information about the Release-announce mailing list