Release-announce
Threads by month
- ----- 2025 -----
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- 1 participants
- 16682 discussions
We are amped to announce the release of:
openstack-placement 7.0.0: Resource provider inventory usage and
allocation service
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/openstack-placement
Download the package from:
https://pypi.org/project/openstack-placement
For more details, please see below.
Changes in openstack-placement 6.0.0.0rc1..7.0.0
------------------------------------------------
b2afade1 Add microversion 1.39 to support any-trait queries
8245f9e5 Remove unused compatibility code
87e56f74 Add any-traits support for allocation candidates
faa1ad51 Add any-traits support for listing resource providers
c19481a5 Extend the RP tree DB query to support any-traits
849c9afd Enhance doc of _get_trees_with_traits
2d2a8ce7 DB layer should only depend on trait id not names
a5ebaf2a Extend the RP db query to support any-traits
7e3602b3 Refactor trait normalization
396634e0 Extra tests around required traits
89cc7332 update placement for os-traits 2.7.0 release
affb87af disable traits count check to allow os-traits 2.7.0
1141597b Updating python testing as per Yoga testing runtime
fb71123a Spec: support mixing required traits with any traits
f7422e27 Spec: support any trait in allocation candidates
a5f31071 Add yoga spec directory
6d49b6df Use 'functional-without-sample-db-tests' tox env for placement nova job
967abd1d Bump min decorator to 4.0.0
7541d94d Add Python3 yoga unit tests
de4eb283 Update master for stable/xena
2007f8fb Enable HTTPProxyToWSGI middleware to find actual client ips
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 25 +-
api-ref/source/parameters.yaml | 59 +-
...ment-mixing-required-traits-with-any-traits.rst | 204 +++++
...6-any-traits-in-allocation_candidates-query.rst | 197 +++++
etc/placement/config-generator.conf | 1 +
lower-constraints.txt | 4 +-
placement/conf/__init__.py | 4 +-
placement/deploy.py | 5 +-
placement/handlers/resource_provider.py | 11 +-
placement/lib.py | 93 ++-
placement/microversion.py | 4 +
placement/objects/allocation_candidate.py | 60 +-
placement/objects/research_context.py | 339 +++++----
placement/objects/resource_provider.py | 54 +-
placement/rest_api_version_history.rst | 15 +
.../functional/db/test_allocation_candidates.py | 827 ++++++++++++++++++---
.../allocation-candidates-any-traits-groups.yaml | 159 ++++
.../gabbits/allocation-candidates-any-traits.yaml | 76 ++
.../gabbits/resource-provider-any-traits.yaml | 47 ++
placement/util.py | 184 ++++-
.../notes/any-traits-support-d3807c27e5a8865c.yaml | 12 +
.../notes/http_proxy_to_wsgi-6c8392d7eaed7c8d.yaml | 6 +
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 +
requirements.txt | 2 +-
setup.cfg | 1 +
tox.ini | 2 +-
35 files changed, 3166 insertions(+), 379 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 1986a681..6e6b9ce9 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -25 +25 @@ os-resource-classes>=1.1.0 # Apache-2.0
-os-traits>=2.6.0 # Apache-2.0
+os-traits>=2.7.0 # Apache-2.0
1
0
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
1
0
We are delighted to announce the release of:
senlin-dashboard 5.0.0: Senlin Dashboard
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/senlin-dashboard
Download the package from:
https://tarballs.openstack.org/senlin-dashboard/
Please report issues through:
https://bugs.launchpad.net/senlin-dashboard/+bugs
For more details, please see below.
Changes in senlin-dashboard 4.0.0..5.0.0
----------------------------------------
7f5258c Updating python testing classifier as per Yoga testing runtime
6b42d76 Add Python3 yoga unit tests
cf17493 Update master for stable/xena
b2049f2 Dropping lower constraints testing
15eea73 Use py3 as the default runtime for tox
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 3 +-
lower-constraints.txt | 127 ------------------------------------------
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 ++
setup.cfg | 1 +
tox.ini | 15 +----
6 files changed, 10 insertions(+), 143 deletions(-)
1
0
We joyfully announce the release of:
sahara-plugin-spark 7.0.0: Spark Plugin for Sahara Project
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/sahara-plugin-spark
Download the package from:
https://tarballs.openstack.org/sahara-plugin-spark/
Please report issues through:
https://storyboard.openstack.org/#!/project/1104
For more details, please see below.
Changes in sahara-plugin-spark 6.0.0..7.0.0
-------------------------------------------
4999d4c Update master for stable/xena
Diffstat (except docs and test files)
-------------------------------------
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 ++++++
2 files changed, 7 insertions(+)
1
0
We are gleeful to announce the release of:
sahara-plugin-vanilla 7.0.0: Vanilla Plugin for Sahara Project
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/sahara-plugin-vanilla
Download the package from:
https://tarballs.openstack.org/sahara-plugin-vanilla/
Please report issues through:
https://storyboard.openstack.org/#!/project/1106
For more details, please see below.
Changes in sahara-plugin-vanilla 6.0.0..7.0.0
---------------------------------------------
03e4216 Update master for stable/xena
Diffstat (except docs and test files)
-------------------------------------
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 ++++++
2 files changed, 7 insertions(+)
1
0
We high-spiritedly announce the release of:
sahara-plugin-mapr 7.0.0: Mapr Plugin for Sahara Project
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/sahara-plugin-mapr
Download the package from:
https://tarballs.openstack.org/sahara-plugin-mapr/
Please report issues through:
https://storyboard.openstack.org/#!/project/1103
For more details, please see below.
Changes in sahara-plugin-mapr 6.0.0..7.0.0
------------------------------------------
2ca87aa Update master for stable/xena
Diffstat (except docs and test files)
-------------------------------------
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 ++++++
2 files changed, 7 insertions(+)
1
0
We are gleeful to announce the release of:
ovn-octavia-provider 2.0.0: OpenStack Octavia integration with OVN
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/ovn-octavia-provider
Download the package from:
https://tarballs.openstack.org/ovn-octavia-provider/
Please report issues through:
https://bugs.launchpad.net/neutron/+bugs
For more details, please see below.
Changes in ovn-octavia-provider 1.1.1..2.0.0
--------------------------------------------
1ac25e8 Allow to create ovn loadbalancer on dual-stack provider networks
6cc77f8 Add support for fullypopulated load balancers
a4ec592 [FT] Enable OVS and OVN compilation from source
4d01470 Set listeners back to ACTIVE upon pool/member action failures
ee800e1 Check gateway IP while looking for LR plugged to LS
1ee61f9 Fix functional tests job
675ea9c Support creating members without a subnet ID
6a61cd2 Add Python3 yoga unit tests
3a1af62 Update master for stable/xena
e9bf916 Fix lower-constanints and pep8 jobs
c5a8e25 Update docs based on support added recently.
Diffstat (except docs and test files)
-------------------------------------
lower-constraints.txt | 8 +-
ovn_octavia_provider/common/constants.py | 1 +
ovn_octavia_provider/driver.py | 36 +++--
ovn_octavia_provider/hacking/checks.py | 2 +-
ovn_octavia_provider/helper.py | 171 ++++++++++++---------
playbooks/run_functional_job.yaml | 2 -
...r-create-without-subnetid-0b4e3aa6ac453f28.yaml | 7 +
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 +
requirements.txt | 4 +-
zuul.d/base.yaml | 8 +-
zuul.d/project.yaml | 2 +-
19 files changed, 356 insertions(+), 130 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 4c5558a..99670ec 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -7 +7 @@ netaddr>=0.7.18 # BSD
-neutron-lib>=2.10.1 # Apache-2.0
+neutron-lib>=2.16.0 # Apache-2.0
@@ -16 +16 @@ pbr>=4.0.0 # Apache-2.0
-SQLAlchemy>=1.2.19 # MIT
+SQLAlchemy>=1.4.23 # MIT
1
0
We are pumped to announce the release of:
neutron 20.0.0: OpenStack Networking
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/neutron
Download the package from:
https://tarballs.openstack.org/neutron/
Please report issues through:
https://bugs.launchpad.net/neutron/+bugs
For more details, please see below.
Changes in neutron 19.0.0.0rc1..20.0.0
--------------------------------------
ca3e3bc49a ovn migration: Don't use executables in /tmp/
833c394218 Log request IDs for matched Nova external events
80879049cf Ensure gateway is set for prefix delegated subnets
2a6a4ab5da Remove exception ``IpAddressAllocationNotFound``
bfae41a748 Enable sctp module in the fullstack Centos node
3be5afe66c Run configure_for_func_testing script after enable fips
e61b117b33 Ensure no GARPs are sent for Load Balancer VIPs on tenant networks
6799e85e5d Update TOX_CONSTRAINTS_FILE for stable/yoga
72fe42a3f1 Update .gitreview for stable/yoga
46c49aedfa [OVN] Update VIP port host ID when traffic detected
cdff281f64 [SR-IOV] Fix QoS extension to set min/max values
480c643dd9 [ovn-migration] Add debug information to create-resources.sh.j2 scripts
c02916de4e Local IP: use LOCAL_IP_TABLE for back flows if no OVS fw
4a66adf94c Group execution of SQL functional tests
5ee94a5b9b [ OVN ][Migration] Reload systemctl daemon after removal
10caa1e101 Mock netutils.is_ipv6_enabled() method when testing
28df8470f6 Fix configure_for_func_testing script
f430cd0072 Don't set HA ports down while L3 agent restart.
30c6092747 Fix typo in the third instruction paragraph of "Controller nodes" block
3ac4b0d634 Remove _standard_attr_segment_lib and use definition from neutron-lib
56774da426 Add port IDs in "RouterInUse" exception during router deletion
a1c7e4cf57 Add devstack-enforce-scope job to our periodic queue
210148e708 Move FIPS jobs from the experimental to the periodic queue
ce10c5189a Re enable update_router_admin_state scenario test
22f1c99453 Restructure layout for periodic, experimental and tox jobs
a51aff743c [OVN][Cosmetic] Improve gen_router_port_options
a98d96f4ef Switch to cirros uec image in ovn tempest jobs
63a8f96426 Revert "[Fullstack] Mark security groups test as unstable"
ba4bfa8842 [Fullstack] Block until dhcp config is done
b2421b01e5 [OVN] Handle RouterNotFound exception in set_gateway_mtu
d5ac103329 Change OVS and OVN installation directories
0b6a95560e change skydive source to skydive-project
b4a192a74c Bump python-neutronclient version to 7.8.0
47537e169e Update local ip doc
e45501aee4 Switch TripleO jobs to CentOS 9
d603525ec9 Refactor back into common method in trunk tests
5a0a2b7847 Allow ovn_db_sync to continue on duplicate normalised CIDR
1aeef5a74e Add new class for Logging API methods
0c9c60d5ca [OVN] Off-path SmartNIC DPU Documentation
7d64d0c116 [OVN] Off-path SmartNIC DPU Port Binding with OVN
8217979fdc [fullstack] use noop fw driver for Local IP conntrack test
129760b84f Doc: Due to recent grafana upgrade change urls in doc
1f97069790 [OVN] Extend port binding parameter validation
b5b519a4fa segments: fix scheduling duplicate segments
5fbd4f1a9d Add ndp proxy policy rules
0fe6c0b8ca Use the "connectivity" property of "MechanismDriver"
9829865073 Refactor session "is_active" handling for sqlalchemy-20
be7331c816 [ovn] Prevent stale ports in the OVN database
9cb06cff30 Doc: add back neutron-fwaas lieutenant
053a9d24ec Add table for pps limitaion
56dbfb7ac4 [OVN][Placement] Read the initial config in the maintenance worker
5bef868477 [OVN] Migrate "reside-on-redirect-chassis" for distributed FIP
084bb163f2 Add qos-pps-minimum-rule-alias API extension
0ddca28454 Make sure "dead vlan" ports cannot transmit packets
ca8b40403f Update irrelevant-files to skip run of untouched jobs
9fcf42d3d5 [OVN] Check if exists trunk ports before cleanup
1c3d90e3da Add local_ip entrypoints
4be4511bec Re enable test_network_v6.TestGettingAddress
f9d976de7e Re add ovs and ovn tempest slow jobs
a0a25cb15c [Server Side] L3 router support ndp proxy
140bb63665 Wait longer before deleting DPDK vhu trunk bridges
ce7f279538 [OVN][QoS] Add external_ids reference to port QoS registers
ebca47365c "L3AgentExtensionsManager" check loaded extensions
cde5657a50 [OVN] Sync QoS policies
507989fc62 Use a thread local variable to store the Nova Notifier enable flag
2d6b33445c Revert "Switch neutron-grenade-dvr-multinode to be non voting temporary"
654c3b796f OVN TestNBDbResources wait for NB_Global table to be present
8fd88fd223 Pass host parameter to the get_network_info method
0d23304120 [OVS] Add IPv6 ICMP RA to the default ingress rules
522837a97f [OVN] Fix overlapping security group objects not correctly applied
0fd168ae93 Use elevated context to update router's external gateway
722fca928d Update irrelevant-files for non scenario jobs
8dfe5cc95b [OVN] Implement floating IP network QoS inheritance
08bdc4ded1 Add "bound_drivers" information to port "vif_details"
94b961f179 Update dns_assignment attribute documentation
1c1814aa6b Fix reference before assignment error in the dhcp_rpc module
a1a895a6e5 Add FIPS enabled scenario jobs
d5b9a04bc2 Local IP internal documentation and release note
8b549533a6 Fix gerrit dashboards url's in docs
1a7f4d5b03 [OVN] Add unit test for binding profile validation
fb1172ef05 Add diff log on mech_logger
15d6cfffc9 Ensure subports status is aligned with parent port
6ea6fdd874 Create a PeriodicWorker for DbQuotaNoLockDriver clean up
ac718804de Add extra logs around enabling/disabling nova notifier code
2d099c4396 Update secure RBAC policies accordingly to the new guidelines
61d23fbe98 Remove installation of the ovs from the source in Devstack plugin
6636f65663 [OVN]Ensure gateway port is running after gateway chassis changed
729290357b [tests] Don't fail if kill cmd says that process don't exists
706e39681f Remove not used parameter from migrate_neutron_database_to_ovn function
d033c9f933 Fix OVS OVSNeutronAgent.reclaim_local_vlan()
1562f9141b Call enable DHCP only if there are subnets with enabled DHCP in network
92b081145e Cosmetic: Change ._ovn to ._nb_ovn to match ._sb_ovn
ddf0568f39 Make configure_for_func_testing compatible with e.g. Centos
af46120f40 [Functional/fullstack] Remove tools from irrelevant list
bbc5af1166 Register cleanup hooks for the object change handlers only when needed
5710d3407b Improve DHCP RPC handler
b5a7dbc67d Revert "Make configure_for_func_testing compatible with e.g. Centos"
0ce584bd9a Add Local IP fullstack test cases
cc0c60d3d8 Fix call to the compile_ovn function from Devstack
ffa8e085be Add missing DHCP opts for genconfig
ef97019c92 Add upgrade check for extra DHCP options
4c6c48956e Exclude router gw subnet ports from port list while port delete.
930ec1eca3 ml2 ovs: Deprecate unused [agent] veth_mtu
ebe9e046c6 Create an index for "agents.host" column
58feb88853 [OVN] Check if OVN SB supports virtual ports
66d50cdbd7 Add devstack plugin support for Local IP
200b345429 Add Local IP policy rules
7aae31c9f9 Make the dead vlan actually dead
2a41b0e152 Local IP: skip ports with invalid ofport
3e71a45195 Allow to use static Local IP openflow rules
391726bd4c Make configure_for_func_testing compatible with e.g. Centos
5e036a6b28 Ensure subports transition to DOWN
553f462656 Ensure only the right events are processed
f3e836217c [Functional] Add extra logs to the L3 HA router transitions
0256e494d0 Disable tracebacks of eventlet.wsgi.server
0255eb31e5 Fix a error when l3-agent gets filter id for ip
18ec0eb209 Fix placement allocation update for port with network QoS policy
a47e9494c1 Check whether vxlan group and local addresses are IPv4 or IPv6
03d08dee38 keepalived "no_track" implemented in version 2.0.3
96a188f654 Inherit from neutron-lib "LinuxInterfaceDriver" class
0e1ec52118 Remove "PortBindingMixin" class and related DB table
ce1a87057a [OVN] Check if OVN NB supports stateless NAT rules
2aa1bbabe3 [OVN] Prevent OVS to OVN migration if firewall "iptables_hybrid"
f2e8a619c5 Delete MAC binding for LRP when the port is deleted
55afd9bc92 [OVN] Allow only one physical network per bridge
4a06685098 [OVN] Correctly set dns_server in dhcpv4/v6 options
ecb0b428ee [FT] Workaround for "test_gateway_chassis_rebalance" test
eee92f5eaf Sync rootwrap.conf from oslo.rootwrap
374aac1cbd Use TOX_CONSTRAINTS_FILE
0e6257606a remove unicode from code
34e560fad0 Add extra debug log with current and new port statuses in ML2 plugin
bd38ba77dc Adopt rehomed QoS FIP extension from neutron-lib 2.18.0
5e62eac7a9 Reduce iptables version check from 1.6.2 to 1.6.0
10bb1baf66 Missing OvS DPDK nodes in ovn-controllers
636f33b16b [OVN] Add floating IP pools extension to OVN L3
82aabb0aa9 Allocate IPs in bulk requests in separate transactions
79037c9516 [OVN] Accept OVS system-id as non UUID formatted string
da8d0eaeea Fix expected exception raised when new scope types are enforced
5b597d6e4e [OVN] Add reverse DNS records
6809bed632 Don't fail subnet validation if gw_ip is actually not changed
dea2057479 Change tobiko CI job in the periodic queue
37d4195b51 Use Port_Binding up column to set Neutron port status
92a1646594 Tweak port metadata test to be more reliable
c6a6c5ae12 [Functional] Fix expected number of the enqueue_state_change calls
19b9662837 Remove _safe_plug_new method from the interface driver
0ae8eba7e7 [OVN][Placement] Make the Placement reporter compatible with OVN
a416f8b0ab Do not announce any DNS resolver if "0.0.0.0" or "::" provided
7b61adbb4a List ports when attempt to delete network with ports
f929488ce4 Amend "network_vlan_ranges" configuration option help text
385b0ad203 Add wait event for metadataagent sb_idl
2dd3ffa271 Remove the expired reservations in a separate DB transaction
3233c97f99 Fix stackalytics' link
2e0e5d2698 Add logs for port_bound_to_host
f9b1882380 Updating python testing as per Yoga testing runtime
1af63e8812 Add Chassis creation wait event in "TestAgentMonitor"
569bafbbd5 [OVN] Keep "connectivity" VIF details parameter in migration
16a793af19 When creating a VXLAN interface, a device is mandatory
abfbe5d54d Do not block qos for direct-physical ports
ef162fcf8e Provide a "priority" value to the OVN events
8a9b9211d1 Quota engine to accept --force parameter in limit update
6288dc7259 Keep binding:profile keys during placement allocation change
e4c168b1fc Improve Router callback system's publish events
8813b0ed2d Replace "target_tenant" with "target_project" in RBAC OVOs and models
4e395c5d2b Fix links for Source code references
176503e610 Avoid writing segments to the DB repeatedly
fa2179278f [OVN] Prevent deleting the only IP of a router port
b1ecde9122 Add "update_network" implementation to "L3AgentExtension" child classes
ef7f673098 Do no use "--strict" for OF deletion in TRANSIENT_TABLE
0152b43ee1 Allow modification of max retries in OVSNeutronAgent
b871dabdf4 [OVN] Add the VIF details "connectivity" parameter
c95ccf0a43 ovn: enable stateless-security-group api
278af85123 ovn: update ACL actions on stateful field change
68f3e21034 [OVN] Chassis name (OVS system-id) must be a UUID formatted string
c686a2b555 Improve DHCP RPC handler
b51d6958f3 Add Local IP L2 extension flows
d3990468b9 Change signature of "sqlalchemy.events.ConnectionEvents.before_execute"
42f52a663b Add "quota-check-limit" extension to OVN extension list
4dfbad7dcd Move ARM64 jobs to the corresponding zuul queue
a4ffd1a2f9 Set report_interval to 0 for ovs agent unit tests
e68a283211 Update placement allocation of bound ports when network QoS policy is changed
cf8fa0d42d Remove functions which enable Neutron's QoS service
0725533a6f [OVN] Fix gateway_mtu option should not always be set
d7178927fd Add upgrade check for floating IP QoS inheritance from network
e41d82e374 Bump lower-constraints for eventlet to 0.26.1
42cfa055c2 Add network QoS inheritance to floating IP
74aa86a976 Properly clean up ovn-northd in functional tests
c8427c82da [OVN] Check new added segments in OVN mech driver
770b64b90e Fix tunnel_types in ml2 ovs sample config
bedd24caff [Fullstack] Don't install OVN in the fullstack job
d02fb560aa [OVN] Update check_for_mcast_flood_reports() to check for mcast_flood
07c4c80e8f Update OVN gap document
b7ae945e33 Ignore warnings in the policies UT
6632a2fe93 Cleaning of the zuul's project.yaml file
23b99e2f12 ovn: Filter ACL columns when syncing the DB
836592a8bc Add functional and fullstack jobs with FIPS enabled
5357689002 Remove some scenario jobs from the check and gate queues
4909c8c18d Bump neutron-lib to 2.17.0
6c9bf1efbd Remove functions to enable Neutron's placement integration
6ead2ce5b7 Disable "TestObjectVersions.test_versions".
ebc4766990 Check interface presence in new namespace
4511290b72 [OVN] Fix port disable security dead when run neutron-ovn-db-sync-util
83f57021d6 Remove run-devstack role from run_functional_job playbook
7e2f73350f [OVN] Fix deadlock in neutron_ovn_db_sync_util.py
7874c57601 [ovn] Add timeout option to ovsdb-client command
1222962767 Add Local IP L2 extension skeleton
662045f519 [OVN] Execute OVN migration transactions independently
cd1d96863e Add Local IP Extension and DB
4f95794d22 Increase openstack-tox-py38 and openstack-tox-py39 timeouts
1248b36ddc [OVN][Placement] Add support for minimum bandwidth QoS rules
53000704f2 Remove todo's in Y release
5627c87137 [OVS][QOS] Dataplane enforcement is limited to min-bw egress direction
41159bd9a4 Cleanup router for which processing added router failed
34c909c9cb Doc: follow-up for recent job renames
3a9a17ad82 Add functional tests for ECMP routes
2bb54a9c46 Document the effects of admin_state_up
cc93d65d62 Update Interop doc
4eada8932c Increase the timeout for arm64 jobs
32c1762c36 Create Keystone admin endpoint for Rally job
753693d315 Bump OVN version for functional job to 21.06
d9f31f5047 Do not set project_id for floating ip ports
e68d89c3d4 Recheck irrelevant files
0e09bf8ce1 Don't enforce scopes in the API policies UT temporary
cb022c1d5c Remove "get_logical_port_chassis_and_datapath"
d1fa2f104d Use the DB object when listing the SG rules
77b3a1a774 Networking guide: Add Guaranteed Minimum Packet Rate
59b2ac0c2a Replace "tenant_id" with "project_id" in OVO base
edf1d0c759 Replace "tenant_id" with "project_id" in metering service
a6f975ac03 [OVN][Placement] Add a SB Chassis event to track changes in BW config
5a7a8db0d8 Check quota limits
7d552848c2 Set RPC timeout in PluginReportStateAPI to report_interval
507a61efba Networking guide: Add trunk limitation to min bandwidth
11d166be68 Don't setup bridge controller if it is already set
02b72f7c96 Unify the states format for address group payloads
0194856da1 [OVS] Workaround when OpenFlow controller restarts
0885018892 Enable min pps tempest tests
bbdba95f40 Revert "[Fullstack] Mark TestHAL3Agent fip_qos test as unstable"
95c2801da8 Check subnet in "_remove_subnet_dhcp_options"
f09c98bf8c Add "FLAVOR_NAME" to ovn migration resources creation
8127221479 Check a namespace existence by checking only its own directory
e49485f2aa Replace "tenant_id" with "project_id"
aada855f6d Enable QoS minimum packet rate rule for OVS backend
d699a955cd Sanitize profile column of ml2_port_bindings table in the DB
8db15cb2f3 Add port-resource-request-groups extension
042de7e6bb Deprecate 'allow_overlapping_ips' config option
b42c8afb4b Add "os-ken" project Lieutenant
d4d90fb6d7 Improve "get_collection_count" calls
d49ce1652d Fix OVN migration workload creation order
10f23398ce Support SB OVSDB connections to non-leader servers
501faef2bc [ovn]Get network availability_zones from Logical_Switch
a278c5ba78 [OVN] Tune OVN routers to reduce the mem footprint for ML2/OVN
8a890ed29c Fix list of DNS extensions supported by OVN
c32c0af9af [OVN] Metadata ports device_owner is "network:distributed" only
5d94a10a15 [OVN] Check if OVN NB supports "Port_Group"
21eabbcf03 [DVR] Fix update of the MTU in the DVR HA routers
110c62ce9f Doc: add ovsdbapp and os-ken to Sub-project table
5665fc437b Bump os-ken to 2.2.0
f6c3552769 [ovn] Stop monitoring the SB MAC_Binding table to reduce mem footprint
8acf7ff096 CI: add experimental jobs to be executed with n-lib master
c2bc676183 Report pkt processing capacity on Neutron agent RP
76a99f9a14 Report CUSTOM_VNIC_TYPE_ traits on Neutron agent RP
744e906f87 [ovn] Add logs for ovs to ovn migration
bf6831e0d2 [OVN Migration] Remove trunk's subports from the nodes
5092f3fb98 [OVN Migration] Remove qr and dhcp ports from the nodes
43bd3fa246 Fix OVN driver validating Geneve max_header_size
b57fdf7038 Revert "Use 2 dhcp agents in TestLegacyL3Agent"
416b7fe2f7 [Fullstack] Don't use dhcp in L3 agent tests
4bd1c82213 Add shared field to SG API response and filter
ec89cd23d1 [Fullstack] Mark TestHAL3Agent fip_qos test as unstable
bd0ded15ca [OVN] Update the DHCP options when the metadata port is modified
e6ed9bd0c8 [Docs] Small improvements to the IPv6 config guide
b993ebb407 Fix dynamic segment allocation race condition
98c269e5a6 Remove trunk related functions from neutron devstack plugin
09019f1ffa Enhanced set of warnings if an answers file or a templates directory is used.
18c959bd24 Remove "_get_network_lock_id" compatibility method
a18efdae26 Rename OVN's "master" branch to "main"
41f78c678b Delete log entries when SG or port is deleted
efc0b7e5af Log OvsdbAppException as warnings
dfcbb4cce0 Execute "migrate_neutron_database_to_ovn" inside the same DB ctx
c20f2e5136 [HA] Do not add initial state change delay in HA router
c4d4742a6d Doc: prerelease checklist
5e32dddc11 Fix "_sync_metadata_ports" with no DHCP subnets
603abeb977 Execute the quota reservation removal in an isolated DB txn
f8c879ddbf Add new indexes to RBAC DB models
f18edfdf45 [DVR] Check if SNAT iptables manager is initialized
84b6db3b05 [OVN] Allow IP allocation with different segments for OVN service ports
1ea26616b4 ovs-agent: Report pkt processing info in heartbeat
56044db26d Add API extension for QoS minimum pps rule
459f63439b Replace cirros 0.4.0 by 0.5.2 in ovn migration create-resources.sh.j2
21d25617ab Change to publish for security-group db tests
771fdc0b07 [DVR] Set arp entries only for IPs from the correct subnet
b0e01c7df3 Revert "update subport status when trunk/subport create/delete is triggerred"
42fda206e9 Replace "Inspector.from_engine()" with "sqlalchemy.inspect()"
57629dc051 Add retry when executing OF commands if "InvalidDatapath"
dc677682ca ovn: use stateless NAT rules for FIPs
7dcddeb0bd Replace "tenant_id" with "project_id" in Quota engine
201fc1254c Drop install_venv
0a92e9de6c [ovn] metadata functional tests don't support Chassis_Private
3d7929591c Open Yoga DB branch
5abd1fb610 Remove dhcp_extra_opt name after first newline character
781edc8f64 req: Bump some dependencies
056251be77 [Docs] Ovn backend now supports FIP QoS bandwdith limiting
a383afa10f [Docs] Add info about how to use shared SG with VMs
0234aa6157 Fix _create_dvr_floating_gw_port missing payload field
f546c11b33 doc: Change availability of QoS policy change
632ffa992f Add Python3 yoga unit tests
347fd599ae Update master for stable/xena
f8f50397ca Rollback db session in case of error during releasing quota reservation
ce3b86eef3 Use neutron-lib standard_attr
0634dcc6d0 [OVS][FW] Initialize ConjIdMap._max_id depending on the current OFs
1762ed8834 [OVN][FT] Check UNIX socket file before using it
48f4e05b6e [Policy] Set scope_types for BaseCheck rules
b6d2f07782 doc: Remove references to dead VMWare NSX extensions
28f3017a90 [OVN] Set NB/SB "connection" inactivity probe
Diffstat (except docs and test files)
-------------------------------------
.gitreview | 1 +
TESTING.rst | 2 +-
bindep.txt | 7 +-
devstack/lib/l2_agent | 10 -
devstack/lib/l3_agent | 10 -
devstack/lib/local_ip | 9 +
devstack/lib/ml2 | 5 -
devstack/lib/placement | 19 -
devstack/lib/qos | 28 -
devstack/lib/trunk | 7 -
devstack/ml2-ovs-compute-local.conf.sample | 2 +-
devstack/ml2-ovs-local.conf.sample | 3 +
devstack/ovn-compute-local.conf.sample | 2 +-
devstack/ovn-local.conf.sample | 2 +-
devstack/plugin.sh | 30 +-
.../contributor/internals/openvswitch_agent.rst | 8 +
.../contributor/internals/openvswitch_firewall.rst | 9 +-
.../contributor/internals/provisioning_blocks.rst | 2 +-
.../contributor/internals/quality_of_service.rst | 5 +
.../contributor/internals/security_group_api.rst | 10 +-
.../contributor/internals/services_and_agents.rst | 2 +-
.../contributor/policies/gate-failure-triage.rst | 4 +-
.../contributor/policies/release-checklist.rst | 4 +
.../contributor/testing/ci_scenario_jobs.rst | 48 +-
.../contributor/testing/ml2_ovs_devstack.rst | 3 +-
.../feature_classification_introduction.rst | 4 +-
etc/rootwrap.conf | 3 +
lower-constraints.txt | 32 +-
neutron/agent/common/ovs_lib.py | 71 +-
neutron/agent/common/placement_report.py | 68 +-
neutron/agent/dhcp/agent.py | 63 +-
neutron/agent/l2/extensions/local_ip.py | 362 ++++++
neutron/agent/l3/agent.py | 75 +-
neutron/agent/l3/dvr_edge_ha_router.py | 22 +-
neutron/agent/l3/dvr_edge_router.py | 16 +-
neutron/agent/l3/dvr_local_router.py | 44 +-
neutron/agent/l3/extensions/conntrack_helper.py | 3 +
neutron/agent/l3/extensions/port_forwarding.py | 3 +
neutron/agent/l3/extensions/qos/fip.py | 3 +
neutron/agent/l3/extensions/qos/gateway_ip.py | 3 +
neutron/agent/l3/ha.py | 20 +-
neutron/agent/l3/ha_router.py | 10 +-
neutron/agent/l3/l3_agent_extensions_manager.py | 54 +-
neutron/agent/linux/dhcp.py | 20 +-
neutron/agent/linux/interface.py | 38 +-
neutron/agent/linux/ip_lib.py | 40 +-
neutron/agent/linux/l3_tc_lib.py | 3 +-
.../agent/linux/openvswitch_firewall/firewall.py | 111 +-
neutron/agent/ovn/metadata/agent.py | 32 +-
neutron/agent/ovn/metadata/ovsdb.py | 9 +-
neutron/agent/rpc.py | 4 +-
neutron/agent/securitygroups_rpc.py | 3 +
neutron/api/converters.py | 37 +
neutron/api/rpc/callbacks/resources.py | 3 +
neutron/api/rpc/handlers/dhcp_rpc.py | 147 +--
neutron/api/v2/base.py | 11 +-
neutron/api/v2/resource_helper.py | 13 +-
neutron/cmd/ovn/neutron_ovn_db_sync_util.py | 4 +-
neutron/cmd/runtime_checks.py | 2 +-
.../sanitize_port_binding_profile_allocation.py | 87 ++
neutron/cmd/sanity/checks.py | 78 +-
neutron/cmd/sanity_check.py | 40 +
neutron/cmd/upgrade_checks/checks.py | 195 +++
neutron/common/_constants.py | 2 +-
neutron/common/ovn/acl.py | 18 +-
neutron/common/ovn/constants.py | 107 +-
neutron/common/ovn/extensions.py | 18 +-
neutron/common/ovn/utils.py | 124 +-
neutron/common/utils.py | 41 +-
neutron/conf/common.py | 4 +-
neutron/conf/db/l3_ndpproxy_db.py | 27 +
neutron/conf/plugins/ml2/drivers/driver_type.py | 4 +-
neutron/conf/plugins/ml2/drivers/ovs_conf.py | 58 +
neutron/conf/policies/__init__.py | 6 +
neutron/conf/policies/address_group.py | 4 +-
neutron/conf/policies/address_scope.py | 24 +-
neutron/conf/policies/auto_allocated_topology.py | 8 +-
neutron/conf/policies/floatingip.py | 20 +-
neutron/conf/policies/floatingip_pools.py | 4 +-
.../conf/policies/floatingip_port_forwarding.py | 16 +-
neutron/conf/policies/l3_conntrack_helper.py | 16 +-
neutron/conf/policies/local_ip.py | 102 ++
neutron/conf/policies/local_ip_association.py | 92 ++
neutron/conf/policies/metering.py | 24 +-
neutron/conf/policies/ndp_proxy.py | 102 ++
neutron/conf/policies/network.py | 100 +-
neutron/conf/policies/port.py | 119 +-
neutron/conf/policies/qos.py | 247 +++-
neutron/conf/policies/rbac.py | 40 +-
neutron/conf/policies/router.py | 88 +-
neutron/conf/policies/security_group.py | 28 +-
neutron/conf/policies/service_type.py | 4 +
neutron/conf/policies/subnet.py | 36 +-
neutron/conf/policies/subnetpool.py | 40 +-
neutron/conf/policies/trunk.py | 28 +-
neutron/db/address_group_db.py | 6 +-
neutron/db/agents_db.py | 4 +-
neutron/db/agentschedulers_db.py | 13 +-
neutron/db/db_base_plugin_common.py | 4 +-
neutron/db/db_base_plugin_v2.py | 75 +-
neutron/db/external_net_db.py | 18 +-
neutron/db/ipam_backend_mixin.py | 5 +-
neutron/db/ipam_pluggable_backend.py | 53 +-
neutron/db/l3_db.py | 77 +-
neutron/db/l3_dvr_db.py | 4 +-
neutron/db/l3_dvrscheduler_db.py | 3 +-
neutron/db/l3_fip_qos.py | 11 +-
neutron/db/l3_gateway_ip_qos.py | 5 +-
neutron/db/l3_gwmode_db.py | 9 +-
neutron/db/l3_hamode_db.py | 3 +-
neutron/db/local_ip_db.py | 300 +++++
neutron/db/metering/metering_db.py | 6 +-
neutron/db/migration/__init__.py | 15 +-
.../alembic_migrations/versions/EXPAND_HEAD | 2 +-
.../2e5352a0ad4d_add_missing_foreign_keys.py | 4 +-
...6f5_add_unique_ha_router_agent_port_bindings.py | 2 +-
.../7d9d8eeec6ad_rename_tenant_to_project.py | 3 +-
.../89ab9a816d70_rename_ml2_network_segments.py | 4 +-
.../030a959ceafa_uniq_routerports0port_id.py | 2 +-
...61a21bcfc_uniq_floatingips0floating_network_.py | 2 +-
.../a9c43481023c_extend_ml2_port_bindings.py | 3 +-
.../d72db3e25539_modify_uniq_port_forwarding.py | 3 +-
.../expand/d8bdf05313f4_add_in_use_to_subnet.py | 3 +-
.../ussuri/expand/f4b9654dd40c_ovn_backend.py | 3 +-
...0820fc498_add_unique_quotas_project_resource.py | 2 +-
.../xena/expand/1bb3393de75d_add_qos_pps_rule.py | 5 +
...8d6f371_rbac_target_tenant_to_target_project.py | 130 ++
.../34cf8b009713_add_router_ndp_proxy_table.py | 71 ++
.../yoga/expand/76df7844a8c6_add_local_ip.py | 72 ++
.../8160f7a9cebb_drop_portbindingports_table.py} | 42 +-
.../expand/ba859d649675_add_indexes_to_rbacs.py | 41 +
.../c181bb1d89e4_qos_minimum_packet_rate_rules.py | 56 +
.../cd9ef14ccf87_add_index_to_agents_host.py | 37 +
...76d3_add_networksegments_database_constraint.py | 37 +
neutron/db/migration/cli.py | 3 +-
neutron/db/models/address_group.py | 2 +-
neutron/db/models/agent.py | 2 +-
neutron/db/models/l3.py | 2 +-
neutron/db/models/local_ip.py | 75 ++
neutron/db/models/loggingapi.py | 3 +-
neutron/db/models/metering.py | 4 +-
neutron/db/models/ndp_proxy.py | 62 +
neutron/db/models/network_segment_range.py | 3 +-
neutron/db/models/port_forwarding.py | 2 +-
neutron/db/models/portbinding.py | 33 -
neutron/db/models/provisioning_block.py | 3 +-
neutron/db/models/securitygroup.py | 2 +-
neutron/db/models/segment.py | 16 +-
neutron/db/models/tag.py | 3 +-
neutron/db/models_v2.py | 2 +-
neutron/db/ovn_revision_numbers_db.py | 2 +-
neutron/db/portbindings_base.py | 41 -
neutron/db/portbindings_db.py | 111 --
neutron/db/provisioning_blocks.py | 3 +-
neutron/db/qos/models.py | 34 +-
neutron/db/quota/api.py | 218 +---
neutron/db/quota/driver.py | 195 +--
neutron/db/quota/driver_nolock.py | 48 +-
neutron/db/rbac_db_mixin.py | 24 +-
neutron/db/rbac_db_models.py | 25 +-
neutron/db/securitygroups_db.py | 29 +-
neutron/db/standard_attr.py | 23 -
neutron/db/standardattrdescription_db.py | 3 +-
neutron/exceptions/__init__.py | 0
neutron/exceptions/qos.py | 24 +
neutron/extensions/l3_ext_ndp_proxy.py | 21 +
neutron/extensions/l3_ndp_proxy.py | 74 ++
neutron/extensions/local_ip.py | 123 ++
neutron/extensions/port_resource_request_groups.py | 23 +
neutron/extensions/qos.py | 1 +
neutron/extensions/qos_fip.py | 44 +-
neutron/extensions/qos_fip_network_policy.py | 20 +
neutron/extensions/qos_pps_minimum_rule.py | 35 +
neutron/extensions/qos_pps_minimum_rule_alias.py | 35 +
neutron/extensions/quota_check_limit.py | 20 +
neutron/extensions/quotasv2.py | 68 +-
neutron/extensions/quotasv2_detail.py | 13 +-
.../extensions/security_groups_shared_filtering.py | 21 +
.../security_groups_shared_filtering_lib.py | 67 +
neutron/extensions/segment.py | 129 +-
neutron/extensions/standard_attr_segment.py | 2 +-
neutron/extensions/stdattrs_common.py | 2 +-
neutron/extensions/tagging.py | 2 +-
neutron/ipam/drivers/neutrondb_ipam/driver.py | 10 +-
neutron/ipam/exceptions.py | 2 +
neutron/notifiers/nova.py | 29 +-
neutron/objects/address_group.py | 7 +-
neutron/objects/address_scope.py | 5 +-
neutron/objects/base.py | 13 +-
neutron/objects/local_ip.py | 112 ++
neutron/objects/ndp_proxy.py | 80 ++
neutron/objects/network.py | 6 +-
neutron/objects/network_segment_range.py | 3 +-
neutron/objects/ports.py | 18 +
neutron/objects/qos/binding.py | 20 +
neutron/objects/qos/policy.py | 47 +-
neutron/objects/qos/qos_policy_validator.py | 31 +
neutron/objects/qos/rule.py | 23 +-
neutron/objects/qos/rule_type.py | 5 +-
neutron/objects/rbac.py | 20 +-
neutron/objects/rbac_db.py | 87 +-
neutron/objects/router.py | 13 +-
neutron/objects/securitygroup.py | 12 +-
neutron/objects/stdattrs.py | 2 +-
neutron/objects/subnet.py | 8 +-
neutron/objects/subnetpool.py | 9 +-
neutron/objects/tag.py | 2 +-
neutron/objects/trunk.py | 12 +
neutron/opts.py | 6 +-
neutron/pecan_wsgi/hooks/quota_enforcement.py | 12 +-
.../linuxbridge/agent/linuxbridge_neutron_agent.py | 5 +-
.../linuxbridge/mech_driver/mech_linuxbridge.py | 6 +-
.../drivers/macvtap/mech_driver/mech_macvtap.py | 6 +-
neutron/plugins/ml2/drivers/mech_agent.py | 67 +-
.../drivers/mech_sriov/agent/eswitch_manager.py | 60 +-
.../ml2/drivers/mech_sriov/agent/pci_lib.py | 18 +-
.../drivers/mech_sriov/mech_driver/mech_driver.py | 9 +-
.../drivers/openvswitch/agent/common/constants.py | 8 +
.../agent/extension_drivers/qos_driver.py | 25 +-
.../agent/openflow/native/br_dvr_process.py | 2 +-
.../openvswitch/agent/openflow/native/br_int.py | 97 +-
.../openvswitch/agent/openflow/native/br_tun.py | 23 -
.../openvswitch/agent/openflow/native/ofswitch.py | 14 +-
.../agent/openflow/native/ovs_bridge.py | 48 +-
.../drivers/openvswitch/agent/ovs_neutron_agent.py | 87 +-
.../openvswitch/mech_driver/mech_openvswitch.py | 6 +-
neutron/plugins/ml2/drivers/ovn/db_migration.py | 111 +-
.../ml2/drivers/ovn/mech_driver/mech_driver.py | 148 ++-
.../ml2/drivers/ovn/mech_driver/ovsdb/commands.py | 1 +
.../ovn/mech_driver/ovsdb/extensions/placement.py | 273 +++++
.../ovn/mech_driver/ovsdb/extensions/qos.py | 151 ++-
.../drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py | 71 +-
.../drivers/ovn/mech_driver/ovsdb/maintenance.py | 137 ++-
.../drivers/ovn/mech_driver/ovsdb/ovn_client.py | 310 +++--
.../drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py | 81 +-
.../drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py | 375 ++++--
neutron/plugins/ml2/managers.py | 69 +-
neutron/plugins/ml2/ovo_rpc.py | 15 +-
neutron/plugins/ml2/plugin.py | 136 ++-
neutron/policy.py | 4 +
neutron/privileged/agent/linux/ip_lib.py | 6 +-
neutron/privileged/agent/linux/utils.py | 10 +-
neutron/quota/__init__.py | 4 +
neutron/quota/resource.py | 111 +-
neutron/services/local_ip/__init__.py | 0
neutron/services/local_ip/local_ip_plugin.py | 48 +
neutron/services/logapi/agent/l3/base.py | 3 +
neutron/services/logapi/api_base.py | 86 ++
neutron/services/logapi/common/db_api.py | 26 +-
neutron/services/logapi/common/sg_callback.py | 2 +-
neutron/services/logapi/drivers/base.py | 3 +-
.../logapi/drivers/openvswitch/ovs_firewall_log.py | 2 +-
neutron/services/logapi/drivers/ovn/driver.py | 22 +-
neutron/services/logapi/logging_plugin.py | 22 +-
neutron/services/logapi/rpc/server.py | 12 +-
neutron/services/metering/agents/metering_agent.py | 14 +-
.../services/metering/drivers/abstract_driver.py | 4 +-
.../metering/drivers/iptables/iptables_driver.py | 6 +-
neutron/services/ndp_proxy/__init__.py | 0
neutron/services/ndp_proxy/exceptions.py | 65 +
neutron/services/ndp_proxy/plugin.py | 386 ++++++
neutron/services/ovn_l3/plugin.py | 62 +-
neutron/services/placement_report/plugin.py | 23 +-
.../services/portforwarding/drivers/ovn/driver.py | 10 +-
neutron/services/qos/constants.py | 30 -
neutron/services/qos/drivers/manager.py | 3 +-
neutron/services/qos/drivers/openvswitch/driver.py | 8 +-
neutron/services/qos/drivers/ovn/driver.py | 7 +-
neutron/services/qos/drivers/sriov/driver.py | 3 +-
neutron/services/qos/qos_plugin.py | 509 ++++++--
neutron/services/revisions/revision_plugin.py | 2 +-
neutron/services/segments/db.py | 10 +-
neutron/services/tag/tag_plugin.py | 2 +-
neutron/services/timestamp/timestamp_db.py | 2 +-
.../drivers/openvswitch/agent/ovsdb_handler.py | 2 +-
neutron/services/trunk/drivers/ovn/trunk_driver.py | 13 +-
neutron/services/trunk/models.py | 2 +-
neutron/services/trunk/plugin.py | 60 +-
.../functional/agent/l3/test_legacy_router.py | 31 +
.../functional/agent/linux/test_bridge_lib.py | 2 +-
.../agent/ovn/metadata/test_metadata_agent.py | 27 +-
.../test_c3e9d13c4367_add_binding_index_to_.py | 10 +-
.../functional/pecan_wsgi/test_controllers.py | 75 +-
.../mech_driver/ovsdb/extensions/test_placement.py | 188 +++
.../ovn/mech_driver/ovsdb/extensions/test_qos.py | 25 +-
.../drivers/ovn/mech_driver/ovsdb/test_impl_idl.py | 19 +-
.../ovn/mech_driver/ovsdb/test_ovn_db_resources.py | 28 +
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py | 203 ++-
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py | 169 ++-
.../drivers/ovn/mech_driver/test_mech_driver.py | 367 +++++-
.../l3_router/test_l3_dvr_router_plugin.py | 87 +-
.../services/logapi/drivers/ovn/test_driver.py | 63 +-
.../functional/services/ovn_l3/test_plugin.py | 40 +-
.../openvswitch/agent/test_trunk_manager.py | 2 +
.../unit/agent/common/test_placement_report.py | 120 +-
.../agent/l2/extensions/test_fdb_population.py | 10 +-
.../unit/agent/l2/extensions/test_local_ip.py | 344 ++++++
.../linux/openvswitch_firewall/test_firewall.py | 84 +-
.../api/rpc/handlers/test_securitygroups_rpc.py | 4 +-
.../conf/policies/test_auto_allocated_topology.py | 32 +-
.../unit/conf/policies/test_availability_zone.py | 4 +-
.../unit/conf/policies/{base.py => test_base.py} | 57 +
.../unit/conf/policies/test_floatingip_pools.py | 9 +-
.../policies/test_floatingip_port_forwarding.py | 80 +-
.../unit/conf/policies/test_l3_conntrack_helper.py | 70 +-
.../conf/policies/test_local_ip_association.py | 181 +++
.../conf/policies/test_network_ip_availability.py | 4 +-
.../conf/policies/test_network_segment_range.py | 10 +-
.../unit/conf/policies/test_security_group.py | 130 +-
.../ipam/drivers/neutrondb_ipam/test_driver.py | 6 -
.../plugins/ml2/drivers/l2pop/test_mech_driver.py | 12 +-
.../agent/test_linuxbridge_neutron_agent.py | 14 +-
.../mech_driver/test_mech_linuxbridge.py | 16 +-
.../macvtap/mech_driver/test_mech_macvtap.py | 16 +-
.../unit/plugins/ml2/drivers/mech_fake_agent.py | 8 +
.../mech_sriov/agent/test_eswitch_manager.py | 118 +-
.../ml2/drivers/mech_sriov/agent/test_pci_lib.py | 11 +-
.../mech_driver/test_mech_sriov_nic_switch.py | 38 +-
.../unit/plugins/ml2/drivers/mechanism_logger.py | 46 +
.../unit/plugins/ml2/drivers/mechanism_test.py | 16 +-
.../agent/extension_drivers/test_qos_driver.py | 32 +
.../agent/openflow/native/ovs_bridge_test_base.py | 86 +-
.../agent/openflow/native/test_br_int.py | 152 ++-
.../agent/openflow/native/test_br_tun.py | 39 -
.../openvswitch/agent/test_ovs_neutron_agent.py | 42 +-
.../drivers/openvswitch/agent/test_ovs_tunnel.py | 3 -
.../mech_driver/test_mech_openvswitch.py | 101 +-
.../mech_driver/ovsdb/extensions/test_placement.py | 234 ++++
.../ovn/mech_driver/ovsdb/extensions/test_qos.py | 103 +-
.../drivers/ovn/mech_driver/ovsdb/test_commands.py | 4 +-
.../ovn/mech_driver/ovsdb/test_impl_idl_ovn.py | 77 +-
.../ovn/mech_driver/ovsdb/test_maintenance.py | 153 ++-
.../ovn/mech_driver/ovsdb/test_ovn_client.py | 122 ++
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py | 2 +
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py | 355 +++---
.../drivers/ovn/mech_driver/test_mech_driver.py | 481 ++++++--
.../plugins/ml2/drivers/ovn/test_db_migration.py | 9 +-
.../unit/plugins/ml2/test_tracked_resources.py | 62 +-
.../unit/privileged/agent/linux/test_ip_lib.py | 15 +-
.../unit/scheduler/test_dhcp_agent_scheduler.py | 6 +-
.../unit/services/logapi/common/test_db_api.py | 117 +-
.../drivers/openvswitch/test_ovs_firewall_log.py | 8 +
.../unit/services/logapi/test_logging_plugin.py | 22 -
.../metering/agents/test_metering_agent.py | 10 +-
.../services/metering/drivers/test_iptables.py | 12 +-
.../unit/services/metering/test_metering_plugin.py | 92 +-
.../unit/services/placement_report/test_plugin.py | 80 ++
.../portforwarding/drivers/ovn/test_driver.py | 51 +-
.../services/revisions/test_revision_plugin.py | 3 +-
.../trunk/drivers/ovn/test_trunk_driver.py | 6 +-
neutron/wsgi.py | 3 +-
playbooks/configure_functional_job.yaml | 6 +
playbooks/enable-fips.yaml | 5 +
playbooks/run_functional_job.yaml | 2 -
...lapping_ips-config-option-0e33af8876bad28f.yaml | 8 +
...ce-driver-plug_new-method-3377ce0b776df6b2.yaml | 9 +
...ksegments-uniq-constraint-89e52b42ca2f7ec2.yaml | 8 +
...-shared-field-to-response-9ff6b49d36f4af4d.yaml | 7 +
...for-direct-physical-ports-32547cc133c122ef.yaml | 7 +
.../notes/bug-817525-eef68687dafa97fd.yaml | 6 +
.../deprecate-agent-veth_mtu-748ca450e32ea192.yaml | 6 +
...op-portbindingports-table-575c6d059c698bf0.yaml | 8 +
.../fix-ovn-dns-extensions-d94ec25d20714b20.yaml | 6 +
...ove-router-callback-event-5ddd73679f23039b.yaml | 7 +
...rit-from-L3AgentExtension-12c8f1fe2af26379.yaml | 7 +
releasenotes/notes/local_ip-de07013ea3e49c67.yaml | 12 +
...ew_QuotaDriverAPI_methods-ed76d167974d6f9d.yaml | 8 +
...-dns-servers-ipv6-subnets-f2d525abc70b01b3.yaml | 11 +
...it-one-physnet-per-bridge-188285955a5ea124.yaml | 4 +
...-smartnic-dpu-portbinding-dd0a16bac6d2e59f.yaml | 7 +
...rt-stateless-sg-mandatory-bdeb1bc626decc51.yaml | 5 +
...ovn-support-virtual-ports-3da6dc89937a63c7.yaml | 5 +
.../ovn-supports-Port_Group-96fc1a89e2da163d.yaml | 7 +
...se-stateless-nat-for-fips-e764c4ece4024be1.yaml | 6 +
.../pkt-processing-capacity-1c43fe49d7bb2193.yaml | 13 +
...t-resource-request-groups-516820eed2fc659b.yaml | 17 +
.../notes/pps-config-ovs-036b5940694f786c.yaml | 15 +
...nheritance-support-in-ovn-1d68b54c42c865da.yaml | 7 +
...os-pps-minimum-rule-alias-dbd652445a033f31.yaml | 6 +
.../qos_min_pps_rule_ovs-3fe3d73227980c53.yaml | 5 +
.../qos_rule_type_min_pps-0cc3fe5b0ee5d596.yaml | 5 +
...tize-port-binding-profile-5b0cba2566f7f950.yaml | 9 +
...imeout-to-report_interval-1265a70b0728e08c.yaml | 5 +
releasenotes/source/conf.py | 16 +-
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 +
requirements.txt | 24 +-
roles/disable_selinux/tasks/main.yaml | 3 +
setup.cfg | 10 +
tools/configure_for_func_testing.sh | 47 +-
tools/install_venv.py | 78 --
tools/install_venv_common.py | 170 ---
.../templates/create-resources.sh.j2 | 23 +-
.../tripleo_environment/ovn_migration.sh | 50 +-
.../playbooks/ovn-migration.yml | 9 +
.../roles/migration/tasks/activate-ovn.yml | 4 +-
.../roles/migration/tasks/cleanup-dataplane.yml | 42 +-
.../roles/migration/tasks/clone-dataplane.yml | 4 +-
.../pre-checks/ovn-controllers/tasks/main.yml | 10 +
.../roles/resources/create/defaults/main.yml | 1 +
.../create/templates/create-resources.sh.j2 | 39 +-
.../validate/templates/validate-resources.sh.j2 | 2 +-
.../playbooks/roles/stop-agents/tasks/main.yml | 4 +
tox.ini | 6 +-
zuul.d/base.yaml | 63 +-
zuul.d/grenade.yaml | 23 +-
zuul.d/job-templates.yaml | 103 ++
zuul.d/project.yaml | 88 +-
zuul.d/rally.yaml | 23 +-
zuul.d/tempest-multinode.yaml | 42 +-
zuul.d/tempest-singlenode.yaml | 99 +-
zuul.d/tripleo.yaml | 14 +-
569 files changed, 21981 insertions(+), 8524 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 7b96f35325..24886b6c30 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -10,2 +10,2 @@ debtcollector>=1.19.0 # Apache-2.0
-decorator>=3.4.0 # BSD
-eventlet>=0.25.1 # MIT
+decorator>=4.1.0 # BSD
+eventlet>=0.26.1 # MIT
@@ -19,2 +19,2 @@ netifaces>=0.10.4 # MIT
-neutron-lib>=2.15.0 # Apache-2.0
-python-neutronclient>=6.7.0 # Apache-2.0
+neutron-lib>=2.20.0 # Apache-2.0
+python-neutronclient>=7.8.0 # Apache-2.0
@@ -22 +22 @@ tenacity>=6.0.0 # Apache-2.0
-SQLAlchemy>=1.3.23 # MIT
+SQLAlchemy>=1.4.23 # MIT
@@ -26 +26 @@ alembic>=1.6.5 # MIT
-stevedore>=1.20.0 # Apache-2.0
+stevedore>=2.0.1 # Apache-2.0
@@ -36 +36 @@ oslo.middleware>=3.31.0 # Apache-2.0
-oslo.policy>=3.7.0 # Apache-2.0
+oslo.policy>=3.10.1 # Apache-2.0
@@ -39 +39 @@ oslo.reports>=1.18.0 # Apache-2.0
-oslo.rootwrap>=5.8.0 # Apache-2.0
+oslo.rootwrap>=5.15.0 # Apache-2.0
@@ -41 +41 @@ oslo.serialization>=2.25.0 # Apache-2.0
-oslo.service>=1.31.0 # Apache-2.0
+oslo.service>=2.8.0 # Apache-2.0
@@ -43 +43 @@ oslo.upgradecheck>=1.3.0 # Apache-2.0
-oslo.utils>=4.5.0 # Apache-2.0
+oslo.utils>=4.8.0 # Apache-2.0
@@ -46 +46 @@ osprofiler>=2.3.0 # Apache-2.0
-os-ken>=2.0.0 # Apache-2.0
+os-ken>=2.2.0 # Apache-2.0
@@ -49 +49 @@ ovs>=2.10.0 # Apache-2.0
-ovsdbapp>=1.11.0 # Apache-2.0
+ovsdbapp>=1.15.0 # Apache-2.0
1
0
We are thrilled to announce the release of:
murano-agent 9.0.0: Python Murano Agent
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/murano-agent
Download the package from:
https://tarballs.openstack.org/murano-agent/
Please report issues through:
https://bugs.launchpad.net/murano/+bugs
For more details, please see below.
Changes in murano-agent 8.0.0..9.0.0
------------------------------------
b873684 Fix murano-agent DIB
2366d52 Add Python3 yoga unit tests
13ba9d3 Update master for stable/xena
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 2 +-
contrib/elements/murano-agent-debian/package-installs.yaml | 12 ++++++++++++
releasenotes/source/index.rst | 1 +
releasenotes/source/xena.rst | 6 ++++++
4 files changed, 20 insertions(+), 1 deletion(-)
1
0
We are pumped to announce the release of:
sahara-extra 15.0.0: Extras for Sahara: hadoop-swiftfs
This release is part of the yoga release series.
The source is available from:
https://opendev.org/openstack/sahara-extra
Download the package from:
https://tarballs.openstack.org/sahara-extra/
Please report issues through:
https://bugs.launchpad.net/sahara/+bugs
For more details, please see below.
1
0