Release-announce
Threads by month
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- 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
- 17234 discussions
We joyfully announce the release of:
ansible-role-atos-hsm 10.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/ansible-role-atos-hsm
Download the package from:
https://tarballs.openstack.org/ansible-role-atos-hsm/
Please report issues through:
https://storyboard.openstack.org/#!/project/1183
For more details, please see below.
Changes in ansible-role-atos-hsm v0.1.0..10.0.0
-----------------------------------------------
baec445 Correct the tox option for skipping sdist generation
dd4a795 Unpin ansible-lint
f5c86df Disable auto-discovery for setuptools
c9f757d setup.cfg: Replace dashes with underscores
c5e5b24 Fix linter
e51c244 Use underscore instead of dash
5069751 Add HA (load balancing) support
90bb6f6 OpenDev Migration Patch
f6f9c3f Add gate config
485a4bb Document role variables and defaults
Diffstat (except docs and test files)
-------------------------------------
.ansible-lint | 2 +
.gitreview | 4 +
README.rst | 47 +++++++++++
defaults/main.yaml | 2 +
handlers/main.yaml | 5 ++
...high-availability-support-44343eaf5563f5c7.yaml | 12 +++
setup.cfg | 22 ++---
setup.py | 3 +-
tasks/main.yaml | 97 ++++++++++++----------
templates/proteccio.rc.j2 | 17 ++++
test-requirements.txt | 2 +
tox.ini | 10 +++
vars.yaml.sample | 12 +++
zuul.d/layout.yaml | 11 +++
14 files changed, 189 insertions(+), 57 deletions(-)
Requirements updates
--------------------
diff --git a/test-requirements.txt b/test-requirements.txt
new file mode 100644
index 0000000..89e2495
--- /dev/null
+++ b/test-requirements.txt
@@ -0,0 +1,2 @@
+ansible-lint
+reno
1
0
We joyfully announce the release of:
neutron 27.0.0
This release is part of the flamingo 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 26.0.0.0rc1..27.0.0
--------------------------------------
7a1a8038f9 [FT] Capture and dismiss the ``DBReferenceError`` exceptions
d3fb3f8e21 [logapi] Wrap inside a DB context the method ``_check_port_bound_sg``
fad3b6f8bc pre-commit: Use local neutron hacking checks
7ad5a47ad3 [SR-IOV] Remove "firewall_driver" from configuration
b5e625fa3a [SR-IOV] Document the trusted virtual functions feature
40692e922a [OVN][FT] Check the subport Port_Binding is created before deletion
4b74594a29 pep8: Return ability to run pylint only on given patches
ca323d9052 Unify ``MetadataProxyHandlerBaseSocketServer`` class (2)
09ed4df066 [FT] Randomize the network segment init method starting time
660b9f80bd [FT] Add wait event for Port_Binding in Metadata tests
c031b59ec1 Decode the metadata response before sending it to the VM
e51a6bdbff Fix AttributeError accessing local compute port
b211df9101 [FT] Mock the DB lock methods in ``TestOvnNbSync`` tests
84f606a9bc [FT] Add all ``TestOvnNbSync|TestOvnSbSync`` classes to the regex
5ffd9ae3a5 [FT] Check the OVN agent cache before the asserts
dbda958b06 Migrate neutron-ovs-tempest-dvr-ha-multinode-full to Noble
da078c79b6 Revert "Add extra logs to the ip_monitor class"
0a044ce384 Set haproxy nbthread[1] to 2
1baf3b462d Revert "tox: Remove basepython and ineffective ignore_basepython_conflict"
e5fe4cc41c [hacking check] Ignore N535 check_no_eventlet_imports
e533560ff0 [SR-IOV] Remove the security group RPC updates
9001ddcb1c Delete tunnel endpoints if endpoint agent is deleted
f7e0561984 Re Reduce number of routers created in test_gateway_chassis_rebalance
23994f6ee0 [OVN] The OVS IDL connection is global for all tests
fc2a53ccce [OVN] Check LSP is subport before removing it from the trunk
1e6381cbd2 [OVN] Remove the datapath UUID from the metadata namespaces
3056fa0877 [OVN] Handle creation of Port_Binding with chassis set (2)
20ee1e368c [OVN] Spread OVN metadata agent heartbeat response in time
61aefa25f5 [OVN] Provide the extension name to ``OVNExtensionEvent`` classes
0117eb0c08 Re-enable optional hacking checks
a7c350d070 [OVN] The OVN agent should be able to re-register
c4fdba2582 [OVN] The OVN agent should handle its own tags and status
227da23f7a [OVN] Remove the check of presence of "Chassis_Private"
6e70cd450c [SGL] Use admin context to retrieve log objs
b615560926 tox: Remove basepython and ineffective ignore_basepython_conflict
9119c75703 Remove url tags from README
c68aa4cab3 [OVN] OVN agents should clean up "Chassis_Private" tags
89b4b88846 [OVN] Fix OVN agent register process
162a4dd1c5 Add default value for the "context_with_global_access" policy
7eb0f0b337 Use ALLOWED_ADDRESS_PAIR resources constant from neutron_lib
79e9b02c65 [ML2/OVN] Validate allowed address pairs and distributed ports
f1de2e4ea1 [OVN]: fix ovn-db-sync to include gateway chassis
4a069c3ff6 [eventlet-removal] Remove usage in ``WorkerService`` class
99365991a3 [eventlet-removal] Remove usage in OVS firewall
02334094d5 [eventlet-removal] Use kernel ``subprocess`` module
1b4f464efe [eventlet-removal] Remove ``UnixDomainHttpProtocol`` class
ce4e97313b [OVN] Remove OVN agent workaround to start the process
2983babbac Use NetworkMTUSubnetConflict from neutron-lib
2d6325bd2d refactor: Remove OvnIdlDistributedLock._last_touch attribute
cc705812fd [FT] Increate the bridge creation event timeout
0295a1918e Use placement constant ``ALLOCATION``
d8697facb0 [FT] Add a retry method when reading the ``Chassis_Private`` register
1ba9f7fd75 [doc] Document the L3 QoS support in Neutron
6c729befc1 [tox] Re add option to override py3 version with TOX_PYTHON
b1310309dd [doc] Include the ML2/OVN minimum bandwidth support added in Zed
b8144b8d7a Imported Translations from Zanata
08b1fb682d Add a temporary grenade job using the OVN Metadata agent
39220d9ebc [doc] How to debug the WSGI Neutron API
9873303dc2 Add deprecation warning for the OVN Metadata agent
34225a61f6 OVS firewall: only remove security group when truly unused
4c2e64536f Fix NetworkMTUSubnetConflict usage for subnet association
1e01e6a713 [OVN] Fix remote-managed binding profile validation
5454e76ff0 [FT] Mark test_fip_connection_for_address_scope unstable
3ad1b0b806 Add non-repair mode to the existing method in OVN sync class
2145901d6f [OVN] Use stateless NAT rules for FIPs
4ebd69f2c5 Use the OVN policer for max-bw only QoS policies
6aeffee5de Fix mocks in the test_l3 unit tests module
a8999d0c03 trivial: Autofix low-hanging linter failures
c934deb0e7 Mock ``sync_state`` method in DHCP agent unit tests
cb913a8c44 docs: Remove crud from conf.py files
d72adaa8d6 tox: Fix indentation
be77ed3a81 pre-commit: Migrate to ruff, enable autopep8
8cd0c79479 DHCP Agent: Log resource update events
e5606b776e Change "tag" table collation to "utf8mb4_bin"
2f2bc8b784 sqlalchemy: Use built-in declarative
4c50416d6a OVS Trunk: Improve code documentation for trunk wiring
33cf8dcd51 Replace the OVN Metadata agent with the OVN agent
ad927935ab [eventlet-removal] ovs: remove the usage of eventlet in the OVS agent
de72132d51 [eventlet-removal] ovs: reimplement signals handling
378453e93d [eventlet-removal] Remove the eventlet WSGI Neutron server code
1c93c84d1c Correction of a typo in the 'sub_ports' field
9c079e57d0 [doc] Change OVN agent "extension" section to "agent"
1db896060b Fix missing [service_providers] service_provider
6b1744eb8a [eventlet-removal] remove eventlet references from dhcp_agent
5034b07cb3 [FT] Wait for the FIP Port_Binding event before checking MAC removal
6107d9d990 [eventlet-removal] Remove the usage of eventlet from the periodic worker
421016017b Remove the fullstack job from the CI
fbdd642df6 Drop unused method
addd8da5c4 Remove compat logic for neutron-lib < 3.9.0
8990dd598f Make resource "tag" case sensitive
d84cdbb68e Change FixedIntervalLoopingCall to use keyword argument
d2f64e5f6a [UT] FIx no_dhcp_release6 test
5c6a10003e [FT] Isolate randomly failing address scope tests
e69505d293 Limit trunk ACTIVE state hack to OVN
d731ee659b ovs: remove usage of loopingcall.FixedIntervalLoopingCall
4296638456 ofswitch: remove usage of eventlet timeout
3135b35f26 Make ``tunnel_ranges`` and ``network_vlan_ranges`` private members
32760ae88e [eventlet-removal] Remove the usage of eventlet in the MacVTAP agent
f315b9a807 [FT] Randomize OVS test bridges and pre-delete them
67ad781821 Bandit: add B311 to skiplist
d6f6abb8b9 [eventlet-removal] Remove the usage of eventlet from the RPC worker
8f219d89f5 Replace deprecated ByteString
5e31a6b356 [eventlet-removal] Remove the usage of eventlet from neutron-metering-agent
3ff9cfd026 Add state reporting back to metadata agents
dae69e4ce6 Fix bad i18n and fstrings interaction with flake8
5cccd2112f Allow empty gateway IP in subnets from subnet pools
4b2625adb9 Move the ``ProcessMonitor`` initialization to the ``Service.start`` phase
1cf5b6de7c Consider logging options when using OVNdbsync
397f48d310 Update report state rpc API
614353e8f9 Fix a random segment unit test failure
c637375522 [eventlet-removal] Patch unit tests for keepalived not. server
7b2d968c27 [FT] Improve ``test_assert_pings_during_br_phys_setup_not_lost*`` tests
baf1378a20 [eventlet-removal] Remove the usage of eventlet from neutron-usage-audit
94f6d69d4e Execute ``test_initialize_network...`` with concurrency 1
7d0d0c2eb0 Drop explicit dependency on python-subunit
20faede200 Do not create the min-bw request if the network segment is deleted
e8c2872ce7 Actually require python >= 3.10
d17e39e528 [eventlet-removal] Remove the usage of eventlet from the OVN maintenance worker
5292b13bbd [eventlet-removal] Remove the usage of eventlet in the L3 agent
5cfc1d5414 [OVN] Set OVN bridge in Chassis_Private in OVN agent
81e1976ec6 Reduce metadata port lookup log message to warning
ffc1509325 Fix nova notification on port unplug
e4a0d153f6 [eventlet-removal] Remove "logger" mechanism from config examples
092412cb61 osdb: remove usage of eventlet in dbhandler
3bf7f8ec80 Update OVN_AGENT_NEUTRON_SB_CFG_KEY when Neutron OVN Agent starts
11ff4f2f98 Deprecate `vlan_qinq` and `vlan_transparent` config options
4fef58514d [eventlet-removal] DHCP: move RPC init to service.start phase
8dea545739 [FT] Match the correct event in ``test_subport_delete``
cd3957a0f9 Move grenade skip level jobs to wsgi
c6f5c05778 Update OVN_AGENT_METADATA_SB_CFG_KEY when OVN metadata agent starts
19774fde2f Extend port resource request only when using qos minimum rules
9ae15feb1d Add provider network resources filter for "network"
c091080fae pre-commit: Bump versions
f4dafbeef6 Move mypy configuration to pyproject.toml
27a98b5c62 pyupgrade changes for Python3.10+
e191ee0a71 Fix some pylint warnings in the test tree
ad065fdcfe [UT] Removal of eventlet from the unit tests
c405d6b355 [FT] Remove of eventlet from the functional tests
99bd0c9331 Move the RPC initialization to the ``Service.start`` phase
76acde9919 Remove code for suse from post-devstack installation
6af3801ac8 Require alembic db migration scripts to be idempotent
e4c58a3417 Delete the metadata agent file from the eventlet directory
26739f7c76 [OVN] OVN agent retrieval filter matching improvement
44d3763831 [FT] Check the SB Port_Binding is created before test execution
993ada3ecc Remove installation guide for openSUSE/SLES
a37c2d2a1e Fix ovn_db_sync for user defined flavor routers
39d95a14e2 Initialize the network segment ranges only in first WSGI worker
7109294ea0 [OVN] Do not supply gateway_port if it's not bound to chassis
75c0895f39 Switch centos 9-stream jobs to run with python 3.12
012327bb4d [OVN] Change the OVN QoS rule priority for floating IPs
2ff5b4a18b Fix DHCP extension if subnet has no gateway_ip
344baa4d4b add pyproject.toml to support pip 23.1
65b9dc622f Allow service role more RBAC access for Octavia
2c35dd53f2 [OVN] Only update the MTU of the router GW LRPs
b352816943 Increase test_simple_execution timeout value
f2b1eb3a94 Workaround oslo master periodic job failures
7a490c855b Subnet filter by "router:external" needs to be changed to "external"
a548177567 [OVN] Handle HA_Chassis_Group field in LRP creation and update
6a6426770d [OVN] Method to retrieve the LRP chassis list
c2a5b99567 Update ``filter_existing_chassis`` signature and make it static
fd20c884cd [OVN] Add a Logical_Router_Port HA_Chassis retrieval method
7cc07aa3be HA_Chassis_Group create command with HA_Chassis assignation
408800a46f [UT] Keep metadata disabled in no_dhcp_release6 check test
5145aa6a55 [ovn]Allow multiple IPv6 ports on router from same network
af3cab0737 Unify ``MetadataProxyHandlerBaseSocketServer`` class
b95db62773 Remove the unused OVN metadata agent code, update UTs
b993f3c9a2 Return a HTTP404 message when the Metadata instance is not present
9872e76e41 [eventlet-removal] Replace ``eventlet.GreenPool`` in the DHCP agent
557d57e165 Increase threshold in TestHAL3Agent fullstack test
d6baf954f3 [eventlet-removal] Replace ``eventlet.GreenPool`` in the L3 agent
8d8ce27414 Add the utility class ``ThreadPoolExecutorWithBlock``
f33e810470 [DHCP] Remove the thread pool resizable mechanism
6699134f3e [L3] Remove the thread pool resizable mechanism
cee489ef0e Consume DHCP constants from neutron-lib
d1c835f666 Consume DuplicatedHANetwork constant from neutron-lib
19fc1122a2 Remove policy unit test enforce_scope override
41168f5cb0 Remove terminology compatibility code
f3f85fa2c4 Remove deprecated plugin argument from policy calls
32e45ca91c Remove stale DVR FIP check introduced in Pike
e72266bf41 Create a common method to encode a HTTP response
c981cfd658 Allow service role to create/update port device_id
750ff49f6b [OVN] Isolate test_ovn_client* Functional Tests
f5a30c2072 Add persist_uuid upgrade scenario test
1920c2fdbd Fix use of pyroute2 Stats tuple import
e700853c0a [OVN][QoS] Update the Logical_Swith_Port options with the QoS values
52098e1c36 [UT] Delete the OVN AgentCache instance in the cleanup
13f274093e Update jobs based on testing runtime for 2025.2
2996f9ff53 Fix LRP.external_ids router name prefix
99a9470da5 [Doc] Add NOTE for external dns requirement for Floating IPs
be3f8a41c1 Revert "Mark TestVirtualPorts tests as unstable"
9c46b51c3b [OVN] Create a HA_Chassis_Group without raising an exception
2fd51371ec Duplicated table lookup in extending port resource request
db03074927 Revert the network IDs filter in ``_gen_router_port_options``
6351f9012c Implement check_vlan_qinq to return True in SR-IOV mech driver
1cc4a79416 Create random named resources in ``TestOvnSbSync``
75d630f3a8 Fix for broken link in README.rst
a5243334cb Revert "[DHCP] Reduce to one single thread the event processing"
1c953a0bcc [OVN] Make the Logical_Switch_Port UP event more robust
5841cacecb [OVN][Placement] Placement init config with Chassis create event
90736b3517 Update provider name when migrating to OVN
b5c912d090 If OVS Manager creation failes retry to set values
2071dbe6eb [doc] Update the release doc to create a new database branch
06252b3471 Add database migration tests
71ff8ee881 Avoid race condition by using persist_uuid
6c6759c3b4 Remove the duplicated YOGA database milestone
bcbde77444 Remove flaky batch notifier unit test
bc250bd89a Spawn IPv6 metadata proxy only when required
0c345dce5b [OVN][FT] Use MySQL backend for ``TestNBDbMonitor*`` classes
e86951ef49 [OVN] Isolate ``test_ovsdb_monitor.TestNBDbMonitor*`` FTs
de237bc92f [OVN] Delete a resource provider removed from the agent config
0b7c808185 Revert "[eventlet-removal] Remove eventlet from DHCP agent"
e18735f403 Revert "[eventlet-removal] Remove the usage of eventlet in the DHCP agent"
8dac3b7cf6 Imported Translations from Zanata
4f82eded11 Disable skip-level jobs in check queue
125c8b8147 Open the 2025.2 (Flamingo) DB branch
7131761a04 Add missing Neutron milestones
dd7c7f4b2b [OVN] Add ``AgentCache`` deletion test
a3cb7e8e14 Update master for stable/2025.1
7910d46313 The ovn_db_revision_check is not required anymore
26ad367c28 fullstack: use shorter agent_down_time and report_interval
c33b6f8534 [FT] Refactor the ``TestNeutronServer._check_active`` method.
98b006b7e0 Fast exit if "segments" plugin is not loaded
979385d8f9 [OVN][Placement] Reduce log level to error when Placement exception
1e560ecd8a Allow to delete singleton instances
d56a1d2b7a Update CIDR notation for loopback and multicast address
16ad980ad9 Remove workaround for old python versions
9b0f62b81a Update OVN installation guide with tunings for VLAN + DVR
Diffstat (except docs and test files)
-------------------------------------
.pre-commit-config.yaml | 82 +++--
.pylintrc | 5 +
README.rst | 3 +-
TESTING.rst | 2 +-
devstack/ovn-compute-local.conf.sample | 6 +-
devstack/ovn-db-local.conf.sample | 7 +-
devstack/ovn-local.conf.sample | 6 +-
.../contributor/internals/ovn/metadata_api.rst | 4 +-
.../contributor/internals/sriov_nic_agent.rst | 31 +-
.../contributor/policies/release-checklist.rst | 20 +-
.../testing/neutron_wsgi_api_server.rst | 116 +++++++
.../install/controller-install-option1-obs.rst | 311 ------------------
.../install/controller-install-option2-obs.rst | 347 ---------------------
.../install/environment-networking-compute-obs.rst | 48 ---
.../environment-networking-controller-obs.rst | 44 ---
.../install/environment-networking-verify-obs.rst | 89 ------
mypy.ini | 20 --
neutron/agent/common/ovs_lib.py | 2 +-
neutron/agent/common/placement_report.py | 29 +-
neutron/agent/common/utils.py | 2 +-
neutron/agent/dhcp/agent.py | 53 ++--
neutron/agent/l2/extensions/dhcp/extension.py | 8 +-
neutron/agent/l2/extensions/dhcp/ipv4.py | 23 +-
neutron/agent/l2/extensions/dhcp/ipv6.py | 8 +-
.../l2/extensions/metadata/host_metadata_proxy.py | 2 +-
.../extensions/metadata/metadata_flows_process.py | 2 +-
.../agent/l2/extensions/metadata/metadata_path.py | 4 +-
neutron/agent/l3/agent.py | 105 +++----
neutron/agent/l3/dvr_fip_ns.py | 16 -
neutron/agent/l3/extensions/conntrack_helper.py | 2 +-
neutron/agent/l3/ha.py | 57 ++--
neutron/agent/l3/ha_router.py | 7 +-
neutron/agent/l3/item_allocator.py | 4 +-
neutron/agent/l3/l3_agent_extensions_manager.py | 2 +-
neutron/agent/l3/link_local_allocator.py | 4 +-
neutron/agent/l3/router_info.py | 4 +-
neutron/agent/linux/daemon.py | 2 +-
neutron/agent/linux/dhcp.py | 19 +-
neutron/agent/linux/external_process.py | 2 +-
neutron/agent/linux/ip_lib.py | 6 -
neutron/agent/linux/ipset_manager.py | 2 +-
neutron/agent/linux/iptables_firewall.py | 2 +-
neutron/agent/linux/iptables_manager.py | 18 +-
neutron/agent/linux/keepalived.py | 10 +-
neutron/agent/linux/l3_tc_lib.py | 2 +-
.../agent/linux/openvswitch_firewall/firewall.py | 8 +-
neutron/agent/linux/utils.py | 89 ++----
neutron/agent/metadata/agent.py | 147 +--------
neutron/agent/metadata/proxy_base.py | 9 +-
neutron/agent/ovn/agent/ovn_neutron_agent.py | 102 +++++-
neutron/agent/ovn/extensions/extension_manager.py | 39 +++
neutron/agent/ovn/extensions/metadata.py | 33 +-
neutron/agent/ovn/metadata/agent.py | 90 +++---
neutron/agent/ovn/metadata/server.py | 117 -------
neutron/agent/ovn/metadata/server_socket.py | 146 +--------
neutron/agent/ovn/ovn_neutron_agent.py | 9 +-
neutron/agent/ovsdb/native/helpers.py | 2 +-
neutron/agent/resource_cache.py | 2 +-
neutron/agent/rpc.py | 12 +-
neutron/api/extensions.py | 4 +-
neutron/api/v2/base.py | 6 +-
neutron/api/wsgi.py | 152 +--------
neutron/cmd/agents/dhcp.py | 10 +-
neutron/cmd/{eventlet => }/agents/l3.py | 11 +-
neutron/cmd/agents/metadata.py | 11 +-
neutron/cmd/agents/ovn_metadata.py | 11 +-
neutron/cmd/agents/ovn_neutron_agent.py | 9 +-
.../plugins => agents}/ovs_neutron_agent.py | 19 +-
neutron/cmd/eventlet/agents/metadata.py | 24 --
neutron/cmd/eventlet/server/__init__.py | 33 --
neutron/cmd/ovn/ml2ovn_trace.py | 2 +-
.../plugins/macvtap_neutron_agent.py | 11 +-
neutron/cmd/sanity/checks.py | 4 +-
neutron/cmd/server/__init__.py | 24 +-
neutron/cmd/{eventlet => }/services/__init__.py | 0
.../cmd/{eventlet => }/services/metering_agent.py | 11 +-
neutron/cmd/upgrade_checks/checks.py | 33 --
neutron/cmd/{eventlet => }/usage_audit.py | 0
neutron/common/_deprecate.py | 6 +-
neutron/common/ipv6_utils.py | 4 +-
neutron/common/metadata.py | 171 ++++++++++
neutron/common/ovn/acl.py | 11 +-
neutron/common/ovn/constants.py | 7 +-
neutron/common/ovn/utils.py | 62 +++-
neutron/common/utils.py | 43 ++-
neutron/common/wsgi_utils.py | 7 +-
neutron/conf/common.py | 18 +-
neutron/conf/db/migration_cli.py | 15 +-
neutron/conf/plugins/ml2/drivers/ovn/ovn_conf.py | 10 +
neutron/conf/policies/base.py | 4 +
neutron/conf/policies/network_ip_availability.py | 2 +-
neutron/conf/policies/port.py | 46 ++-
neutron/conf/policies/subnet.py | 1 +
neutron/db/address_group_db.py | 2 +-
neutron/db/agents_db.py | 38 ++-
neutron/db/agentschedulers_db.py | 3 +
neutron/db/allowedaddresspairs_db.py | 15 +
neutron/db/db_base_plugin_v2.py | 43 ++-
neutron/db/external_net_db.py | 11 +-
neutron/db/l3_db.py | 4 +
neutron/db/l3_hamode_db.py | 7 +-
neutron/db/migration/__init__.py | 20 ++
...19773d7_create_l3harouternetwork_project_id_.py | 2 +-
...791_add_port_hardware_offload_extension_type.py | 24 +-
.../5bcb7b31ec7d_add_port_trusted_attribute.py | 7 +-
...9f07c5c_add_vlan_qinq_column_to_the_network_.py | 8 +-
.../expand/d553edeb540f_tag_case_sensitive.py | 47 +++
.../alembic_migrations/versions/EXPAND_HEAD | 2 +-
.../c181bb1d89e4_qos_minimum_packet_rate_rules.py | 5 -
neutron/db/migration/cli.py | 5 +-
neutron/db/models_v2.py | 2 +-
neutron/db/ovn_hash_ring_db.py | 2 +-
neutron/db/rbac_db_models.py | 5 +-
neutron/db/securitygroups_rpc_base.py | 2 +-
neutron/exceptions/mtu.py | 28 --
neutron/extensions/qinq.py | 2 +-
neutron/extensions/quotasv2.py | 3 +-
neutron/extensions/securitygroup.py | 3 +-
neutron/extensions/tagging.py | 8 +-
neutron/extensions/vlantransparent.py | 2 +-
neutron/ipam/drivers/neutrondb_ipam/db_models.py | 2 +-
neutron/ipam/requests.py | 39 ++-
neutron/ipam/subnet_alloc.py | 18 +-
neutron/locale/de/LC_MESSAGES/neutron.po | 72 +----
neutron/locale/es/LC_MESSAGES/neutron.po | 56 +---
neutron/locale/fr/LC_MESSAGES/neutron.po | 52 +--
neutron/locale/it/LC_MESSAGES/neutron.po | 56 +---
neutron/locale/ja/LC_MESSAGES/neutron.po | 48 +--
neutron/locale/ko_KR/LC_MESSAGES/neutron.po | 48 +--
neutron/locale/pt_BR/LC_MESSAGES/neutron.po | 52 +--
neutron/locale/ru/LC_MESSAGES/neutron.po | 58 +---
neutron/locale/zh_CN/LC_MESSAGES/neutron.po | 45 +--
neutron/locale/zh_TW/LC_MESSAGES/neutron.po | 45 +--
neutron/manager.py | 10 -
neutron/objects/base.py | 7 +-
neutron/objects/db/api.py | 4 +-
neutron/objects/subnet.py | 16 -
neutron/opts.py | 5 +-
neutron/pecan_wsgi/controllers/utils.py | 4 +-
neutron/pecan_wsgi/hooks/notifier.py | 4 +-
neutron/pecan_wsgi/hooks/policy_enforcement.py | 4 +-
neutron/plugins/ml2/drivers/agent/_common_agent.py | 2 +-
neutron/plugins/ml2/drivers/helpers.py | 12 +-
.../plugins/ml2/drivers/macvtap/macvtap_common.py | 2 +-
.../drivers/macvtap/mech_driver/mech_macvtap.py | 15 +-
neutron/plugins/ml2/drivers/mech_agent.py | 7 +
.../drivers/mech_sriov/agent/sriov_nic_agent.py | 27 +-
.../drivers/mech_sriov/mech_driver/mech_driver.py | 14 +-
.../openvswitch/agent/openflow/native/br_int.py | 22 +-
.../openvswitch/agent/openflow/native/ofswitch.py | 67 ++--
.../agent/openflow/native/ovs_oskenapp.py | 47 ++-
.../openvswitch/agent/ovs_dvr_neutron_agent.py | 2 +-
.../drivers/openvswitch/agent/ovs_neutron_agent.py | 55 +++-
.../openvswitch/mech_driver/mech_openvswitch.py | 15 +-
.../plugins/ml2/drivers/ovn/agent/neutron_agent.py | 23 +-
neutron/plugins/ml2/drivers/ovn/db_migration.py | 15 +
.../ml2/drivers/ovn/mech_driver/mech_driver.py | 80 ++++-
.../ml2/drivers/ovn/mech_driver/ovsdb/commands.py | 133 +++++++-
.../ovn/mech_driver/ovsdb/extensions/placement.py | 62 +++-
.../ovn/mech_driver/ovsdb/extensions/qos.py | 51 ++-
.../drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py | 57 +++-
.../drivers/ovn/mech_driver/ovsdb/maintenance.py | 66 ++++
.../drivers/ovn/mech_driver/ovsdb/ovn_client.py | 78 +++--
.../drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py | 176 +++++++++--
.../ml2/drivers/ovn/mech_driver/ovsdb/ovs_fixes.py | 37 +++
.../drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py | 76 +++--
neutron/plugins/ml2/drivers/type_tunnel.py | 50 +--
neutron/plugins/ml2/drivers/type_vlan.py | 53 ++--
neutron/plugins/ml2/extensions/dns_integration.py | 4 +-
neutron/plugins/ml2/managers.py | 20 +-
neutron/plugins/ml2/plugin.py | 37 ++-
neutron/policy.py | 21 +-
neutron/privileged/agent/linux/ip_lib.py | 2 +-
neutron/privileged/agent/linux/utils.py | 15 +-
neutron/privileged/agent/ovsdb/native/helpers.py | 37 ++-
neutron/profiling/profiled_decorator.py | 2 +-
neutron/scheduler/l3_ovn_scheduler.py | 4 +-
neutron/server/ovn_maintenance.py | 4 +-
.../server/{periodic_eventlet.py => periodic.py} | 4 +-
neutron/server/{rpc_eventlet.py => rpc.py} | 4 +-
neutron/server/wsgi_eventlet.py | 46 ---
neutron/service.py | 77 +----
.../externaldns/drivers/designate/driver.py | 2 +-
neutron/services/logapi/common/sg_callback.py | 5 +-
neutron/services/logapi/common/sg_validate.py | 6 +-
neutron/services/logapi/drivers/ovn/driver.py | 74 +++++
neutron/services/metering/agents/metering_agent.py | 32 +-
.../metering/drivers/iptables/iptables_driver.py | 8 +-
neutron/services/qos/qos_plugin.py | 36 ++-
.../drivers/openvswitch/agent/ovsdb_handler.py | 46 ++-
.../drivers/openvswitch/agent/trunk_manager.py | 4 +-
neutron/services/trunk/drivers/ovn/trunk_driver.py | 48 +++
neutron/services/trunk/plugin.py | 35 +--
.../l3/extensions/qos/test_fip_qos_extension.py | 1 +
.../extensions/test_conntrack_helper_extension.py | 1 +
.../l3/extensions/test_gateway_ip_qos_extension.py | 1 +
.../l3/extensions/test_ndp_proxy_extension.py | 1 +
.../extensions/test_port_forwarding_extension.py | 3 +-
.../agent/l3/test_keepalived_state_change.py | 18 +-
.../functional/agent/l3/test_legacy_router.py | 43 ---
.../functional/agent/l3/test_metadata_proxy.py | 16 +-
.../functional/agent/linux/bin/ipt_binname.py | 41 ---
.../functional/agent/linux/test_conntrackd.py | 2 +-
.../agent/ovn/agent/test_ovn_neutron_agent.py | 101 +++++-
.../agent/ovn/metadata/test_metadata_agent.py | 56 ++--
.../agent/ovsdb/native/test_connection.py | 15 +-
.../functional/agent/ovsdb/native/test_helpers.py | 26 ++
.../functional/cmd/test_destroy_patch_ports.py | 2 +-
.../functional/pecan_wsgi/test_controllers.py | 4 +-
.../mech_driver/ovsdb/extensions/test_placement.py | 42 ++-
.../ovn/mech_driver/ovsdb/extensions/test_qos.py | 72 ++++-
.../drivers/ovn/mech_driver/ovsdb/test_impl_idl.py | 243 ++++++++++++++-
.../ovn/mech_driver/ovsdb/test_maintenance.py | 50 ++-
.../ovn/mech_driver/ovsdb/test_ovn_client.py | 149 ++++++++-
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py | 202 +++++++++---
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py | 90 +++++-
.../drivers/ovn/mech_driver/test_mech_driver.py | 121 ++++++-
.../plugins/ml2/drivers/test_type_tunnel.py | 93 ++++++
.../privileged/agent/linux/test_ip_lib.py | 2 +-
.../scheduler/test_dhcp_agent_scheduler.py | 2 +-
.../scheduler/test_l3_agent_scheduler.py | 2 +-
.../functional/services/logapi/test_logging.py | 2 +-
.../functional/services/ovn_l3/test_plugin.py | 9 +-
.../trunk/drivers/ovn/test_trunk_driver.py | 54 +++-
.../unit/agent/l2/extensions/dhcp/test_base.py | 101 ++++--
.../unit/agent/l2/extensions/dhcp/test_ipv4.py | 97 ++++--
.../unit/agent/l2/extensions/dhcp/test_ipv6.py | 48 ++-
.../metadata/test_host_metadata_proxy.py | 3 +-
.../metadata/test_metadata_flows_process.py | 2 +-
.../l2/extensions/metadata/test_metadata_path.py | 10 +-
.../unit/agent/l3/extensions/test_ndp_proxy.py | 7 +
.../agent/l3/extensions/test_port_forwarding.py | 1 +
.../linux/openvswitch_firewall/test_firewall.py | 43 +++
.../unit/agent/linux/test_iptables_firewall.py | 3 +-
.../agent/ovn/extensions/test_extension_manager.py | 30 ++
.../unit/agent/ovn/metadata/test_server_socket.py | 137 ++++++++
.../api/rpc/callbacks/consumer/test_registry.py | 6 +-
.../api/rpc/callbacks/test_resource_manager.py | 30 +-
.../conf/policies/test_network_ip_availability.py | 8 +-
.../port/extensions/test_data_plane_status.py | 3 +-
.../plugins/ml2/drivers/agent/test_capabilities.py | 8 +-
.../unit/plugins/ml2/drivers/base_type_tunnel.py | 26 +-
.../mech_sriov/agent/test_eswitch_manager.py | 2 +-
.../mech_sriov/agent/test_sriov_nic_agent.py | 7 +-
.../ml2/drivers/openvswitch/agent/fake_oflib.py | 8 +-
.../agent/openflow/native/ovs_bridge_test_base.py | 22 +-
.../agent/openflow/native/test_ofswitch.py | 43 +++
.../agent/openflow/native/test_ovs_oskenapp.py | 70 +++++
.../openvswitch/agent/test_ovs_capabilities.py | 8 +-
.../openvswitch/agent/test_ovs_neutron_agent.py | 65 ++--
.../ml2/drivers/ovn/agent/test_neutron_agent.py | 131 +++++++-
.../mech_driver/ovsdb/extensions/test_placement.py | 56 ++++
.../ovn/mech_driver/ovsdb/extensions/test_qos.py | 14 +-
.../ovn/mech_driver/ovsdb/test_impl_idl_ovn.py | 24 +-
.../ovn/mech_driver/ovsdb/test_maintenance.py | 27 ++
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py | 53 +++-
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py | 128 ++++++--
.../drivers/ovn/mech_driver/test_mech_driver.py | 90 ++++--
.../plugins/ml2/drivers/ovn/test_db_migration.py | 16 +
.../unit/plugins/ml2/drivers/test_type_vlan.py | 24 +-
.../plugins/ml2/extensions/test_dns_integration.py | 2 +-
.../unit/plugins/ml2/test_tracked_resources.py | 16 +-
.../service_providers/test_driver_controller.py | 2 +-
.../services/logapi/drivers/ovn/test_driver.py | 52 ++-
.../unit/services/logapi/drivers/test_manager.py | 38 +--
.../portforwarding/drivers/ovn/test_driver.py | 5 +-
.../openvswitch/agent/test_ovsdb_handler.py | 40 ++-
.../trunk/drivers/ovn/test_trunk_driver.py | 69 ++++
neutron/worker.py | 3 +-
pyproject.toml | 35 +++
rally-jobs/plugins/README.rst | 2 +-
...-virtual-ip-by-ovn-driver-0d46fed7652fea7a.yaml | 8 +
.../bump-report-state-rpc-d392d7d616ced8a0.yaml | 12 +
...-vlan_qinq-config-options-ed2384c02e2dab53.yaml | 9 +
.../notes/haproxy-nbthread-a658040c98639b47.yaml | 8 +
.../octavia-service-role-b8ee74e5cb52ea30.yaml | 33 ++
.../ovn-db-sync-gw-agent-cd049668511ac730.yaml | 7 +
.../ovn-fip-stateless-nat-403d2dec7a480aae.yaml | 9 +
...etadata-agent-deprecation-33d5e5acba902391.yaml | 15 +
...-delete-resource-provider-72c09b7df7238984.yaml | 7 +
...ovn-placement-init-config-6198f572e1dadcba.yaml | 8 +
...ovn-qos-fip-rule-priority-16ad3908790dfa7d.yaml | 8 +
...-max-bw-physical-networks-843dfce4a60fc38f.yaml | 7 +
...rvice-role-port-device-id-61eb7b781b3b01ca.yaml | 6 +
.../sr-iov-remove-sg-rpc-22f5dc1a515b6dbb.yaml | 5 +
.../notes/tag-case-sensitive-f94700cd349a65a2.yaml | 8 +
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/conf.py | 202 +-----------
releasenotes/source/index.rst | 1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 10 +-
requirements.txt | 8 +-
setup.cfg | 20 +-
test-requirements.txt | 1 -
tools/coding-checks.sh | 6 +-
tools/configure_for_func_testing.sh | 7 -
tox.ini | 255 ++++++---------
zuul.d/base.yaml | 86 +----
zuul.d/grenade.yaml | 53 ++--
zuul.d/job-templates.yaml | 43 +--
zuul.d/project.yaml | 3 +-
zuul.d/rally.yaml | 6 +-
zuul.d/tempest-multinode.yaml | 20 +-
zuul.d/tempest-singlenode.yaml | 35 ++-
428 files changed, 7553 insertions(+), 6370 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 161c7b6983..515a682a27 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4 +4 @@
-pbr>=4.0.0 # Apache-2.0
+pbr>=6.0.0 # Apache-2.0
@@ -18 +18 @@ netaddr>=0.7.18 # BSD
-neutron-lib>=3.17.0 # Apache-2.0
+neutron-lib>=3.21.1 # Apache-2.0
@@ -40 +40 @@ oslo.serialization>=5.5.0 # Apache-2.0
-oslo.service>=3.5.0 # Apache-2.0
+oslo.service[threading]>=4.2.1 # Apache-2.0
@@ -47 +47 @@ os-resource-classes>=1.1.0 # Apache-2.0
-ovs>=2.12.0 # Apache-2.0
+ovs>3.3.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 4bb436e6cf..30a00a456b 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4 +3,0 @@ fixtures>=3.0.0 # Apache-2.0/BSD
-python-subunit>=1.0.0 # Apache-2.0/BSD
1
0
We are satisfied to announce the release of:
magnum 21.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/magnum
Download the package from:
https://tarballs.openstack.org/magnum/
Please report issues through:
https://bugs.launchpad.net/magnum/+bugs
For more details, please see below.
21.0.0
^^^^^^
New Features
* This release introduces the 'credentials' endpoint to Magnum API
which initially supports rotation of cluster credentials. The
definition of "credential" and the implementation to perform the
rotation, is dictated by the underlying driver.
Changes in magnum 20.0.0..21.0.0
--------------------------------
c85b9554 Add credential API
a1fa999c Drop description for ZeroMQ
062f3031 CI: Drop Heat driver and container build/publish jobs
fa1c5ae6 Imported Translations from Zanata
c440b198 Cluster Template flavor_id and master_flavor_id should not be mandatory.
24b36775 Address pecan deprecation warning
cbeb6a89 Add insecure_registry parameter to templates API
3d7c57cb Add unit tests to improve code coverage
3c297f95 Ensure cluster template can be created with no labels
5d96148c Debug logging for periodic updates now outputs cluster UUID
ecb48851 Drop Kubernetes v1.27 tests
d3587f1b Migrate from wsgi scripts to module paths
0373acf5 Remove installation guide for openSUSE/SLES
89f185b1 certs: add subject key identifier extension
4e449622 Update Quickstart guide to use OS client
1a8bd81c Update master for stable/2025.1
86071c2e Drop binary dependencies for cmd2
b2aed67d Install and configure for Red Hat Enterprise Linux and CentOS - fix few mistakes
d8d2016e add validation for boot volume size
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 117 ---------------------
api-ref/source/clustertemplates.inc | 1 +
.../source/samples/clustertemplate-create-req.json | 1 +
bindep.txt | 1 -
devstack/files/debs/magnum | 2 -
devstack/lib/magnum | 4 +-
magnum/api/attr_validator.py | 20 ++++
magnum/api/controllers/root.py | 2 +-
magnum/api/controllers/v1/__init__.py | 13 ++-
magnum/api/controllers/v1/cluster.py | 19 ++++
magnum/api/controllers/v1/cluster_template.py | 28 +++++
magnum/api/controllers/v1/credential.py | 65 ++++++++++++
magnum/api/controllers/v1/nodegroup.py | 21 ++++
magnum/api/controllers/versions.py | 3 +-
magnum/api/rest_api_version_history.rst | 9 ++
magnum/cmd/conductor.py | 2 +
magnum/common/exception.py | 5 +
magnum/common/policies/__init__.py | 2 +
magnum/common/policies/credential.py | 35 ++++++
magnum/common/x509/operations.py | 6 ++
magnum/conductor/api.py | 8 ++
magnum/conductor/handlers/credential_conductor.py | 58 ++++++++++
magnum/conf/services.py | 4 +-
magnum/drivers/common/driver.py | 4 +
magnum/service/periodic.py | 8 +-
.../api/controllers/v1/test_cluster_template.py | 64 +++++++++++
.../unit/api/controllers/v1/test_credential.py | 81 ++++++++++++++
.../unit/api/controllers/v1/test_nodegroup.py | 27 +++++
magnum/{api/app.wsgi => wsgi/api.py} | 0
...dd-boot-volume-size-check-0262c2b61abc7ccf.yaml | 5 +
...add-subject-key-identifer-ae5c6ebe86749239.yaml | 7 ++
.../notes/credential-api-be55ad07a3f2ae22.yaml | 7 ++
...agnum-api-wsgi-entrypoint-25878b2d8b7d30b3.yaml | 9 ++
.../notes/drop-heat-ci-f4f06c73603cb678.yaml | 8 ++
.../periodic-logs-use-uuid-65b257ab9c227494.yaml | 6 ++
releasenotes/source/2025.1.rst | 6 ++
releasenotes/source/index.rst | 1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 44 ++++----
.../source/locale/fr/LC_MESSAGES/releasenotes.po | 64 -----------
.../source/locale/ja/LC_MESSAGES/releasenotes.po | 16 +--
requirements.txt | 2 +-
tox.ini | 2 +-
53 files changed, 664 insertions(+), 297 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index e52d3f7d..3b0c17d0 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -10 +10 @@ alembic>=0.9.6 # MIT
-cliff!=2.9.0,>=2.8.0 # Apache-2.0
+cliff>=4.0.0 # Apache-2.0
1
0
We eagerly announce the release of:
manila-ui 14.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/manila-ui
Download the package from:
https://tarballs.openstack.org/manila-ui/
Please report issues through:
https://bugs.launchpad.net/manila-ui/+bugs
For more details, please see below.
Changes in manila-ui 13.0.0..14.0.0
-----------------------------------
a915dfc Imported Translations from Zanata
29da176 Imported Translations from Zanata
77a04ed Imported Translations from Zanata
3f962d5 Fix small mistake in phrase
b8e1ce4 Update error message strings
322fb37 Updated the warning text
18c520c Imported Translations from Zanata
91677bf Add manila-ui job and first manila-ui integration tests
08ac218 Imported Translations from Zanata
e150e2a Remove unicode prefix from code
547dc00 Imported Translations from Zanata
c29529f Imported Translations from Zanata
9b63701 Zuul: do not use USE_PYTHON3
863eb24 Remove Python 3.9 support
5d0191c Remove unused .testr.conf
c7a326a Remove unnecessary +x mode
988a887 create unit test for test_absolute_limits
7cedf33 Replaced deprecated Manila CLI commands with OpenStack Client commands
b550d2d Update master for stable/2025.1
Diffstat (except docs and test files)
-------------------------------------
.testr.conf | 7 -
.zuul.yaml | 60 +-
manila_ui/dashboards/admin/defaults/tables.py | 2 +-
.../dashboards/admin/security_services/tables.py | 8 +-
.../admin/share_group_snapshots/tables.py | 16 +-
.../dashboards/admin/share_group_types/forms.py | 2 +-
.../dashboards/admin/share_group_types/tables.py | 8 +-
.../templates/share_group_types/_update.html | 6 +-
.../dashboards/admin/share_group_types/views.py | 2 +-
manila_ui/dashboards/admin/share_groups/tables.py | 18 +-
.../dashboards/admin/share_instances/tables.py | 12 +-
manila_ui/dashboards/admin/share_servers/tables.py | 16 +-
.../dashboards/admin/share_snapshots/tables.py | 16 +-
manila_ui/dashboards/admin/share_types/tables.py | 8 +-
.../share_types/templates/share_types/_update.html | 6 +-
manila_ui/dashboards/admin/share_types/views.py | 2 +-
.../dashboards/admin/shares/replicas/tables.py | 8 +-
.../shares/templates/shares/_manage_share.html | 2 +-
.../shares/templates/shares/_migration_cancel.html | 2 +-
.../templates/shares/_migration_complete.html | 2 +-
.../templates/shares/_migration_get_progress.html | 2 +-
.../shares/templates/shares/_migration_start.html | 2 +-
.../shares/templates/shares/_unmanage_share.html | 2 +-
.../dashboards/project/security_services/tables.py | 8 +-
.../project/share_group_snapshots/tables.py | 14 +-
.../dashboards/project/share_groups/tables.py | 18 +-
.../dashboards/project/share_networks/tables.py | 14 +-
.../dashboards/project/share_snapshots/tables.py | 24 +-
manila_ui/dashboards/project/shares/forms.py | 2 +-
.../dashboards/project/shares/replicas/tables.py | 18 +-
.../dashboards/project/shares/replicas/views.py | 2 +-
manila_ui/dashboards/project/shares/tables.py | 52 +-
.../dashboards/project/user_messages/tables.py | 8 +-
manila_ui/locale/cs/LC_MESSAGES/django.po | 12 +-
manila_ui/locale/de/LC_MESSAGES/django.po | 91 +-
manila_ui/locale/en_GB/LC_MESSAGES/django.po | 87 +-
manila_ui/locale/fr/LC_MESSAGES/django.po | 12 +-
manila_ui/locale/id/LC_MESSAGES/django.po | 87 +-
manila_ui/locale/ko_KR/LC_MESSAGES/django.po | 86 +-
manila_ui/locale/pt_BR/LC_MESSAGES/django.po | 46 +-
manila_ui/locale/ru/LC_MESSAGES/django.po | 1630 +++++++++++++++++---
manila_ui/locale/tr_TR/LC_MESSAGES/django.po | 22 +-
.../notes/remove-py39-ce646bf748e7a560.yaml | 5 +
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/index.rst | 1 +
.../source/locale/de/LC_MESSAGES/releasenotes.po | 10 +-
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 14 +-
.../source/locale/ru/LC_MESSAGES/releasenotes.po | 591 +++++++
setup.cfg | 3 +-
test-requirements.txt | 2 +-
tox.ini | 11 +
54 files changed, 2447 insertions(+), 818 deletions(-)
Requirements updates
--------------------
diff --git a/test-requirements.txt b/test-requirements.txt
index 3af3249..54b5581 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -4 +3,0 @@ ddt>=1.4.1 # MIT
-python-subunit>=1.4.0 # Apache-2.0/BSD
@@ -5,0 +5 @@ pytest>=5.3.5 # MIT
+pytest-html>=2.0.1 #MPL-2.0
1
0
We are excited to announce the release of:
keystone 28.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/keystone
Download the package from:
https://tarballs.openstack.org/keystone/
Please report issues through:
https://bugs.launchpad.net/keystone/+bugs
For more details, please see below.
Changes in keystone 27.0.0..28.0.0
----------------------------------
f8338be43 Fix AD nested groups issues
cf6a83f9e Imported Translations from Zanata
9c8f3a410 Stop installing removed "memcache" extra
fa7fd43e8 alembic: Explicitly set path_separator
f263a3b55 sqlalchemy: Use built-in declarative
84a30d560 trust schema: don't require user_id to be in uuid format
48407c6d7 Remove Python 3.9 support
398e05c21 Fix json schema of user groups
a2e54ac55 trust schema: don't require project_id to be in uuid format
8ab4ecd1b Remove OSA test job
ee4aef7dd Separate user response and request schema
1d67a0ae7 Split role assignment request/response schemas
26408ecd9 Revert "docs: identity service now use https"
b834722f1 Prevent MFA bypass
2323c474f Fix getting token from application credentials token
403394524 zuul: Remove keystone-tox-patch_cover job
9bde660ae zuul: Rename, reorder tempest jobs
b6f955b8e api: Add log when creating unscoped token
7830e89df api: Remove constraints on user IDs
3c72ffb36 docs: identity service now use https
b02ed6c9f Updated the doc for MySQL > 5.7
1be3fa9f3 Update pre-commit hook versions
89a157427 Remove sample mod_wsgi config file
606e46098 Allow additional properties in endpoint schema
3c17d3a1c Fix limit.model response schema
d57db0fb3 Replace deprecated usage of pkg_resources in tests
0cd66f5f8 Remove openSUSE/SLES from install guide
d5fc2c0f6 Use real service type in catalog multi-region test
0d2cc1a3a setup: Remove pbr's wsgi_scripts
037bf7c4d wsgi: Don't create, use lock in same line
ee437c72c Add pyproject.toml to support pip 23.1
d688c3c95 Start building openapi doc
5125d9fee Fix DB migrations after alembic integration
9407be8d2 Remove tags from README
615e0f181 Fix an error in the document
3ce6d6db4 Add a new index on project_endpoint_group
46ba4f455 api: Don't restrict unknown querystring parameters yet (redux)
feca9be8e Document example when report_invalid_password_hash=event
747198efa Imported Translations from Zanata
187c1af50 api: Correct query string schema for access rules API
05cc3d190 api: Don't restrict unknown querystring parameters yet
b4b2f29c8 Add JSON schema and validation for `region`
1e4165950 Update master for stable/2025.1
7db8d5fe5 Support emitting partial hash of invalid password
3915fd3d1 docs: Add usage guide for trusts
08065b255 Direct link to keystone docs
2e3ba3910 reno: Update master for unmaintained/2023.1
23b670978 Add explicit dependency on Werkzeug
bc698b3b6 Remove pointer for keystone-tempest-plugin
b934212e5 Remove remaining reference to volume v2 API
11681e229 Skip functional tests on pre-commit config update
d4713cacd Remove leftovers for SQLAlchemy < 2
9f35c9b29 Fix inconsistency in CADF initiator name field
6d97d94be Remove the password element from the generated dict in update_user
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 3 +
.pre-commit-config.yaml | 8 +-
.zuul.yaml | 131 +++++----
README.rst | 3 +-
api-ref/requirements.txt | 4 +
api-ref/source/conf.py | 2 +-
api-ref/source/index.rst | 5 +
api-ref/source/openapi.rst | 5 +
.../admin/federation/configure_federation.rst | 10 +-
httpd/wsgi-keystone.conf | 35 ---
keystone/api/_shared/authentication.py | 23 +-
keystone/api/os_oauth1.py | 6 +-
keystone/api/os_oauth2.py | 11 +-
keystone/api/regions.py | 60 ++--
keystone/api/users.py | 23 +-
keystone/api/validation/parameter_types.py | 11 +
keystone/application_credential/schema.py | 51 +++-
keystone/assignment/schema.py | 166 ++++++-----
keystone/auth/core.py | 32 ++-
keystone/auth/plugins/token.py | 19 +-
keystone/catalog/backends/sql.py | 3 +-
keystone/catalog/schema.py | 122 ++++++--
keystone/cmd/bootstrap.py | 3 +-
keystone/cmd/cli.py | 10 +-
keystone/common/password_hashing.py | 34 +++
keystone/common/policies/base.py | 4 +-
keystone/common/policies/policy_association.py | 3 +-
keystone/common/policies/protocol.py | 3 +-
keystone/common/policies/service_provider.py | 15 +-
keystone/common/rbac_enforcer/enforcer.py | 3 +-
keystone/common/resource_options/core.py | 2 +-
keystone/common/sql/alembic.ini | 1 +
keystone/common/sql/core.py | 4 +-
keystone/common/sql/migrations/manage.py | 2 +-
...8725d6fa226_add_project_id_index_to_project_.py | 31 +++
keystone/common/sql/upgrades.py | 19 +-
keystone/common/utils.py | 8 +-
keystone/conf/security_compliance.py | 77 ++++++
keystone/credential/schema.py | 5 +-
keystone/exception.py | 15 +-
keystone/federation/idp.py | 6 +-
keystone/federation/schema.py | 8 +-
keystone/identity/backends/ldap/common.py | 24 +-
keystone/identity/backends/ldap/core.py | 13 +-
keystone/identity/backends/sql.py | 6 +-
keystone/identity/core.py | 3 +-
keystone/identity/schema.py | 307 ++++++++++++++-------
keystone/limit/schema.py | 14 +-
keystone/locale/es/LC_MESSAGES/keystone.po | 6 +-
keystone/locale/ru/LC_MESSAGES/keystone.po | 8 +-
keystone/models/token_model.py | 3 +-
keystone/notifications.py | 58 +++-
keystone/resource/core.py | 5 +-
keystone/resource/schema.py | 27 +-
keystone/server/flask/application.py | 10 +-
keystone/server/flask/common.py | 3 +-
keystone/server/flask/core.py | 8 +-
.../request_processing/middleware/auth_context.py | 5 +-
.../test_associate_project_endpoint_extension.py | 6 +-
keystone/trust/schema.py | 10 +-
keystone/wsgi/api.py | 3 +-
keystone_tempest_plugin/README.rst | 5 -
pyproject.toml | 3 +
...nvalid-password-reporting-975955d2d79c21b3.yaml | 10 +
.../notes/remove-py39-6d0746192cebd384.yaml | 5 +
.../remove-wsgi-scripts-615b97ee4d6e0de2.yaml | 8 +
releasenotes/source/2023.1.rst | 2 +-
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/index.rst | 1 +
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 15 +-
.../source/locale/fr/LC_MESSAGES/releasenotes.po | 120 ++++++++
.../source/locale/ja/LC_MESSAGES/releasenotes.po | 22 +-
.../locale/ko_KR/LC_MESSAGES/releasenotes.po | 202 ++++++++++++++
requirements.txt | 1 +
setup.cfg | 7 +-
tools/sample_data.sh | 18 +-
tox.ini | 20 +-
111 files changed, 2034 insertions(+), 1013 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 3b03fc21d..aa980f262 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -39,0 +40 @@ osprofiler>=1.4.0 # Apache-2.0
+Werkzeug>=0.15.0 # BSD License
1
0
We eagerly announce the release of:
neutron-fwaas 23.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/neutron-fwaas
Download the package from:
https://tarballs.openstack.org/neutron-fwaas/
Please report issues through:
https://bugs.launchpad.net/neutron/+bugs
For more details, please see below.
Changes in neutron-fwaas 22.0.0..23.0.0
---------------------------------------
1589b5db8 Remove url tags from README
a9bd72c63 tox: Remove basepython and ineffective ignore_basepython_conflict
6911bd07b Don't notify/access non-existent ports
20651ced8 Use neutron-lib constants for agent mode
e57d911ac Replace deprecated assertItemsEqual
a95135c0d Drop tox target for removed tempest tests
6f3e2fe3d Zuul: do not use USE_PYTHON3
2f2f08155 Remove the fullstack job from the CI
b2e1cb94b Avoid unnecessary iniset_multiline
d1432f62a Deprecate unused [fwaas] agent_version
13c9c9a43 Use reader context for DB queries
ed98cd8a2 Remove py39 reference from setup.cfg
f7f42f2d9 Set service type when registering provider config
f1afc78fb [S-RBAC] New default API policies added
cd440561c Add neutron-tempest-plugin-fwaas-ovn job to the check and gate queues
11cc05f96 Replace UPPER_CONSTRAINTS_FILE
7ceba2df0 Update master for stable/2025.1
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 18 +-
README.rst | 15 +-
devstack/plugin.sh | 5 +-
neutron_fwaas/db/firewall/v2/firewall_db_v2.py | 25 +-
neutron_fwaas/policies/firewall_group.py | 124 ++++--
neutron_fwaas/policies/firewall_policy.py | 125 ++++--
neutron_fwaas/policies/firewall_rule.py | 157 +++++---
neutron_fwaas/services/firewall/fwaas_plugin_v2.py | 3 +-
.../agents/drivers/linux/iptables_fwaas_v2.py | 2 +-
.../service_drivers/agents/firewall_agent_api.py | 2 +
.../services/logapi/agents/drivers/iptables/log.py | 2 +-
.../services/logapi/common/fwg_callback.py | 2 +
.../agents/drivers/linux/test_iptables_fwaas_v2.py | 56 ++-
.../unit/services/firewall/test_fwaas_plugin_v2.py | 3 +-
.../logapi/agents/drivers/iptables/test_log.py | 7 +-
.../services/logapi/common/test_fwg_callback.py | 5 +
.../deprecate-agent_version-388041ad3608e43a.yaml | 5 +
releasenotes/notes/drop-py39-fbdd3fd504153a18.yaml | 7 +
...s-rbac-api-policies-added-4dc1db4ff91fbbed.yaml | 8 +
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/index.rst | 1 +
setup.cfg | 3 +-
tox.ini | 25 +-
28 files changed, 1522 insertions(+), 211 deletions(-)
1
0
We are satisfied to announce the release of:
neutron-vpnaas 27.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/neutron-vpnaas
Download the package from:
https://tarballs.openstack.org/neutron-vpnaas/
Please report issues through:
https://bugs.launchpad.net/neutron/+bugs
For more details, please see below.
Changes in neutron-vpnaas 26.0.0..27.0.0
----------------------------------------
e0b5e2001 Remove url tags from README
eafa52150 [S-RBAC] New default API policies for neutron-vpnaas
8e164633e Use neutron-lib constants for agent mode
de21e8299 Add pyproject.toml to support pip 23.1
2543cca53 Remove py39 jobs and fix functional job
0bc954111 Set service type when registering provider config
518736c0a Update master for stable/2025.1
1f0183b36 Switch to neutron-lib device owner constants
Diffstat (except docs and test files)
-------------------------------------
.zuul.yaml | 4 +-
README.rst | 17 +-
neutron_vpnaas/db/vpn/vpn_ext_gw_db.py | 5 +-
neutron_vpnaas/policies/endpoint_group.py | 71 +++++--
neutron_vpnaas/policies/ike_policy.py | 71 +++++--
neutron_vpnaas/policies/ipsec_policy.py | 71 +++++--
neutron_vpnaas/policies/ipsec_site_connection.py | 72 +++++--
neutron_vpnaas/policies/vpnservice.py | 71 +++++--
neutron_vpnaas/services/vpn/common/constants.py | 8 -
neutron_vpnaas/services/vpn/plugin.py | 2 +-
.../services/vpn/service_drivers/base_ipsec.py | 6 +-
.../services/vpn/service_drivers/ovn_ipsec.py | 5 +-
.../strongswan/test_strongswan_driver.py | 1 +
.../unit/policies/test_ipsec_site_connection.py | 224 +++++++++++++++++++++
pyproject.toml | 3 +
releasenotes/notes/drop-py39-ffff9f6d0ecfdcf3.yaml | 7 +
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/index.rst | 1 +
setup.cfg | 3 +-
25 files changed, 1168 insertions(+), 167 deletions(-)
1
0
We are pumped to announce the release of:
magnum-ui 17.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/magnum-ui
Download the package from:
https://tarballs.openstack.org/magnum-ui/
Please report issues through:
https://bugs.launchpad.net/magnum-ui/+bugs
For more details, please see below.
Changes in magnum-ui 16.0.0..17.0.0
-----------------------------------
8b85469 Imported Translations from Zanata
7d3d869 Imported Translations from Zanata
9744bb2 Support credential API
b3d4612 Imported Translations from Zanata
ee7edd2 Fix unescaped percent sign in mgsid translation strings
420d786 Imported Translations from Zanata
93b836b Fix a typo in a gettext string.
ad4bd6a Correct Docker Registry naming
4ad1594 Fix small mistake in "template" phrase
bcf5843 Switch id to uppercase
c53e56e Fix minor grammar issue
fa0768c Drop environments for nose
b817c76 Remove note about old pip's behavior
858e814 Update master for stable/2025.1
Diffstat (except docs and test files)
-------------------------------------
magnum_ui/api/magnum.py | 6 +-
magnum_ui/api/rest/magnum.py | 11 +
magnum_ui/locale/cs/LC_MESSAGES/djangojs.po | 508 --------------
magnum_ui/locale/de/LC_MESSAGES/djangojs.po | 30 +-
magnum_ui/locale/en_AU/LC_MESSAGES/djangojs.po | 18 +-
magnum_ui/locale/en_GB/LC_MESSAGES/djangojs.po | 156 ++---
magnum_ui/locale/fr/LC_MESSAGES/djangojs.po | 23 +-
magnum_ui/locale/id/LC_MESSAGES/djangojs.po | 30 +-
magnum_ui/locale/ja/LC_MESSAGES/djangojs.po | 32 +-
magnum_ui/locale/ko_KR/LC_MESSAGES/djangojs.po | 30 +-
magnum_ui/locale/pt_BR/LC_MESSAGES/djangojs.po | 30 +-
magnum_ui/locale/ru/LC_MESSAGES/django.po | 21 +-
magnum_ui/locale/ru/LC_MESSAGES/djangojs.po | 571 +++++++++++----
magnum_ui/locale/tr_TR/LC_MESSAGES/djangojs.po | 18 +-
.../cluster-templates/workflow/info.help.html | 4 +-
.../cluster-templates/workflow/labels.help.html | 2 +-
.../cluster-templates/workflow/spec.help.html | 4 +-
.../container-infra/clusters/actions.module.js | 10 +
.../clusters/actions.module.spec.js | 5 +
.../clusters/resize/resize.service.js | 2 +-
.../rotate-credential/rotate-credential.service.js | 119 ++++
.../rotate-credential.service.spec.js | 102 +++
.../clusters/workflow/advanced.help.html | 2 +-
.../clusters/workflow/size.help.html | 2 +-
.../dashboard/container-infra/magnum.service.js | 24 +-
.../container-infra/magnum.service.spec.js | 11 +-
.../notes/credential-rotate-e507587e06d70d48.yaml | 5 +
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/index.rst | 1 +
.../source/locale/de/LC_MESSAGES/releasenotes.po | 6 +-
.../locale/en_GB/LC_MESSAGES/releasenotes.po | 26 +-
.../source/locale/id/LC_MESSAGES/releasenotes.po | 6 +-
.../source/locale/ja/LC_MESSAGES/releasenotes.po | 6 +-
.../locale/ko_KR/LC_MESSAGES/releasenotes.po | 10 +-
.../locale/pt_BR/LC_MESSAGES/releasenotes.po | 6 +-
.../source/locale/ru/LC_MESSAGES/releasenotes.po | 764 ++++++++++++++++++++-
.../locale/zh_CN/LC_MESSAGES/releasenotes.po | 6 +-
requirements.txt | 12 +-
test-requirements.txt | 9 -
tox.ini | 6 -
41 files changed, 1647 insertions(+), 1003 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 0b52440..4a52b6d 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -4,10 +3,0 @@
-
-# The order of packages is significant, because pip processes them in the order
-# of appearance. Changing the order has an impact on the overall integration
-# process, which may cause wedges in the gate later.
-# Order matters to the pip dependency resolver, so sorting this file
-# changes how packages are installed. New dependencies should be
-# added in alphabetical order, however, some dependencies may need to
-# be installed in a specific order.
-#
-# PBR should always appear first
@@ -15 +5 @@ pbr!=2.1.0,>=2.0.0 # Apache-2.0
-python-magnumclient>=4.2.0 # Apache-2.0
+python-magnumclient>=4.9.0 # Apache-2.0
diff --git a/test-requirements.txt b/test-requirements.txt
index 4e81a19..97843f0 100644
--- a/test-requirements.txt
+++ b/test-requirements.txt
@@ -1,9 +0,0 @@
-# The order of packages is significant, because pip processes them in the order
-# of appearance. Changing the order has an impact on the overall integration
-# process, which may cause wedges in the gate later.
-# Order matters to the pip dependency resolver, so sorting this file
-# changes how packages are installed. New dependencies should be
-# added in alphabetical order, however, some dependencies may need to
-# be installed in a specific order.
-#
-# Hacking should appear first in case something else depends on pep8
1
0
We are happy to announce the release of:
ovn-bgp-agent 5.0.0
This release is part of the flamingo release series.
The source is available from:
https://opendev.org/openstack/ovn-bgp-agent
Download the package from:
https://tarballs.openstack.org/ovn-bgp-agent/
Please report issues through:
https://bugs.launchpad.net/ovn-bgp-agent/+bugs
For more details, please see below.
Changes in ovn-bgp-agent 4.0.0..5.0.0
-------------------------------------
d9b0b54 Adapt wait_until_true
6512c7c Migrate ovn-bgp-agent-tempest-plugin-multinode to Noble
ccf4c29 Fix hacking checks from neutron-lib 3.21.1
4b9aa1f setup.cfg: Replace dashes with underscores
c5a42e3 Add empty place holder for sample conf
fd029f9 Ensure that ARP/NDP is enabled for vlan devices
e9afafa Replace UPPER_CONSTRAINTS_FILE
03fac24 Remove oslo.rootwrap from this repository
b75b569 Ignore reno artefacts (RELEASENOTES.rst and reno.cache)
1a0d8c8 Fix arp_proxy LSP option formatting
06f00c8 Use OS_TEST_PATH evironment variable to define tests location
acbf2b2 Update master for stable/2025.1
cc57d65 [doc] Remove anycast_evpn_gateway_mode reference
ceadaf4 Validate ovn/ovs db connection options
f17e6f6 Fix running sync method for every external_ids update.
fa34405 Ensure that bridge exist and UP before adding tables
Diffstat (except docs and test files)
-------------------------------------
.gitignore | 2 +
.stestr.conf | 2 +-
devstack/lib/ovn-bgp-agent | 7 --
devstack/settings | 3 -
etc/ovn-bgp-agent/.gitignore | 4 ++
etc/ovn-bgp-agent/rootwrap.conf | 27 --------
etc/ovn-bgp-agent/rootwrap.d/rootwrap.filters | 13 ----
ovn_bgp_agent/config.py | 35 ++--------
.../drivers/openstack/nb_ovn_bgp_driver.py | 13 ++--
ovn_bgp_agent/drivers/openstack/ovn_bgp_driver.py | 9 ++-
ovn_bgp_agent/drivers/openstack/utils/evpn.py | 11 +--
ovn_bgp_agent/drivers/openstack/utils/frr.py | 4 +-
ovn_bgp_agent/drivers/openstack/utils/ovn.py | 17 ++---
ovn_bgp_agent/drivers/openstack/utils/wire.py | 15 +++--
.../drivers/openstack/watchers/nb_bgp_watcher.py | 14 ++--
.../openstack/watchers/test_nb_bgp_watcher.py | 56 +++++++++++++++-
.../drivers/openstack/test_nb_ovn_bgp_driver.py | 21 +++---
.../unit/drivers/openstack/test_ovn_bgp_driver.py | 18 +++--
.../drivers/openstack/utils/test_driver_utils.py | 3 +-
.../unit/drivers/openstack/utils/test_evpn.py | 5 +-
.../unit/drivers/openstack/utils/test_wire.py | 23 +++++++
.../openstack/watchers/test_nb_bgp_watcher.py | 78 ++++++++++++++++++++++
ovn_bgp_agent/utils/linux_net.py | 35 +++++++---
.../enable_arp_ndp_for_vlans-6c306601aba68cb4.yaml | 10 +++
releasenotes/source/2025.1.rst | 6 ++
releasenotes/source/index.rst | 1 +
requirements.txt | 1 -
setup.cfg | 14 ++--
tox.ini | 11 +--
zuul.d/tempest-multinode.yaml | 12 ++--
37 files changed, 334 insertions(+), 207 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 1f100c1..669e180 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -13 +12,0 @@ oslo.privsep>=2.3.0 # Apache-2.0
-oslo.rootwrap>=5.15.0 # Apache-2.0
1
0
We exuberantly announce the release of:
nova 32.0.0
This release is part of the flamingo 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 31.0.0..32.0.0
------------------------------
187ffa120f Update Debian qemu/libvirt/libguestfs versions
45ddbc2569 Add Flamingo prelude section
51aceec3ab docs: Update libvirt version support matrix for Flamingo
2bf2814add Fix fast8 tox target
567dbe1867 hypervisors: Optimize uptime retrieval for better performance
4495f1f019 [pci]Keep used dev in Placement regardless of dev_spec
f37cdf0c41 [PCI tracker]Remove non configured devs when freed
d86aa2d15a Reproduce bug/2115905
1593dddfaf Fix bug 2114951
aa59133626 Reproducer for bug 2114951
60ba6afc49 Add service version for Falmingo
2c87ab7573 Update compute rpc alias for epoxy
73724fef9a doc: mark the maximum microversion for 2025.2 Flamingo
68fbace8af Fix duplicate words
19f206f58c Fix 'nova-manage image_property set' command
583d88308f Replace remaining usage of Ubuntu Jammy
79846eb0d0 libvirt: Disable VMCoreInfo device for SEV-encrypted instances
87385d2411 Follow-up of AMD SEV-ES support
a8386bdab3 Purge nested SEV RPs when SEV is disabled
af287b71c4 Add functional test scenario for mixed SEV RPs
4f5a3f3c00 libvirt: Launch instances with SEV-ES memory encryption
dc6641baad Add hw_mem_encryption_model image property
6c0a689d80 Detect AMD SEV-ES support
f914cb185c Add service role in Nova policy
ea50365cce Do not yield in threading mode
350cdd1b5e [CI]Make nova-tox-py312-threading voting
1318cd48a1 [test]RPC using threading or eventlet selectively
83eed99a9f Run unit test with threading mode
b278240370 Allow to start unit test without eventlet
2a9cbdabce Ask for pre-prod testing for native threading
b7c7d45093 Migrate MEM_ENCRYPTION_CONTEXT from root provider
d6032973ca Update min support for Flamingo
1d32b50b4a api: Only apply "soft" additionalProperties validation to requests
2a546a8645 tests: Use valid UUIDs for cinder resources
a8651eaff3 api: Separate volume, snapshot and volume attachments
2e666e768a api: Address issues with images APIs
4119634bf1 api: Fix validators for hw:cpu_max_* extra specs
93c0f9bc74 restrict swap volume to cinder
d6a3f86329 Run nova-api and -metadata in threaded mode
e2adef487e [tests] Add printing of sample and template paths
c7eac94fc5 only show standard image properties in server show.
3e33b58092 Run nova-next with n-sch in threading mode
5cbe39aca9 Allow services to start with threading
bda78b5cf2 Remove logic for unsupported old libvirt/qemu
df630cd1b2 api: Deprecate v2 API
d238306aa6 api: Remove '[api] auth_strategy', NoAuthMiddlware
4baa108c04 api: Remove deprecated pipeline_factory
b2451a74fc conf: Rename '[api] neutron_default_tenant_id'
c921e5b3bc tests: Use v2.1 API in OSAPIFixture
0996acc941 tests: Remove unnecessary API version overrides
3a2169cb59 tests: Update to use '/v2.1' prefix, avoid project ID
660bacebc4 Fix libvirt metadata upgrade release note
6a19bf9778 Drop unused method
c8e36b57d9 db: Fix api_db_opts reading main_db_opts
7ce26377af Add image meta to libvirt XML metadata
619cd0a9c7 Add more flavor metadata to libvirt guest XML
4c64f84058 Fix image ID in libvirt metadata when unshelving
ebfda4bb37 Enable E711 consistently
668d9d37f8 libvirt: Get info with abs path, rebase with rel path
acc469b3de mypy: fix type annotations for PciDevicePoolList and NUMATopologyLimits
8701a93743 Document native threading mode and tuneables
f8d0b2ee98 Fix doc comment on manager role change
593ac130b6 Don't reset port dns_name when shelving instances
6c03f9d1da Update contributor guide for 2025.2 Flamingo
d8e1248b7e api: Add response body schemas for images APIs
48ddc7c4d1 Replace eventlet.event.Event with threading.Event
3eea2d58a9 Implement USB controller extra spec for libvirt.
56e038900c [test]Speed up qemu announce test by mocking sleep
218ce9448b [test]Speed up RBD test by decreasing retry interval
f175f68e90 [test]Speed up ironic console test by decreasing timeout
8bf3bcccc4 [test]Speed up fs retry tests by mocking sleep
ae3ae0700d Print ThreadPool statistics
06699f26a5 Add project manager role in Nova API policy rule
920344c276 Drop unused parameter type validation method
bd2b62a2e4 Migrate ExceptionHelper to test utilities
02fcae2d45 Remove unused utilities
c5feba11ff Make the default executor configurable
cc0c57b73a Rename DEFAULT_GREEN_POOL to DEFAULT_EXECUTOR
f9eb35a384 Make nova.utils.pass_context private
bf04b66b4a Move ConductorManager to use spawn_on
3b99b8a6e9 FUP: Translate scatter-gather to futurist
547a002cc5 Imported Translations from Zanata
4adde2c0ae sqlalchemy: Use built-in declarative
ce8faa8d74 api: Add response body schemas for networks API
8f9cbe0015 api: Add response body schemas for removed APIs
e249f5762d api: Address issues with server group APIs
04589a4530 api: Add response body schemas for server group APIs
558a870e13 api: Add response body schemas for server password APIs
8ed52a058a api: Add response body schemas for server external events API
697c05dd55 libvirt: Add objects and notifications for USB controller model.
dab248718d Implement sound model extra spec for libvirt.
183896a79b libvirt: Add objects and notifications for sound model.
0208be629c Fix pci_tracker.save to delete all removed devs
d3cb76c858 Reproduce that only half of the PCI devs are removed
5c180e1761 Move ComputeManager to use spawn_on
b215c6fee9 Add spawn_on
81a03ab824 Replace utils.spawn_n with spawn
d90e7726c0 Use futurist for _get_default_green_pool()
95e60fd58a api: Correct expected errors
c4f81a54d5 api: Address issues with remote consoles APIs
1cd1c472bd Note on RPC error decorators around build_and_run_instance
7d946c4535 Fix neutron client dict grabbing
38f978d39a Add Project Manager role context in unit tests
4e6070085f Revert^2 "Support glance's new location API"
1efbbc8d5f Remove Unicode characters
2275b8545e Translate scatter-gather to futurist
0065bb6cd4 Cache [pci]alias parsing
ae064caf16 Validate [pci]alias at service startup
acc6221660 Validated that PCI alias has proper ids
c3f392dd8e Multiple spec per PCI alias limitation
0bfac5c7fe Return HTTP400 for multi spec pci alias if PCI in Placement
a0af4648b5 api: Address issues with hypervisors APIs
cd401c5c1b libvirt: Enable autodeflate and freePageReporting for memballoon
3b08d60dc4 api: Address issues with server diagnostics APIs
33cf8fef38 api: Address issues with keypairs APIs
72a66cbb9e db: Resolve alembic deprecation warning
f09904f62d api: Address issues with instance actions API
c4c5134369 Fix small documentation issue
b3aefbcb58 Remove unused config options
6ba5168da8 doc: Fix Caracal release number
93af6dce29 Remove contrib/clean-on-delete.py
a1c47fc242 [doc]Clarify where to set pci_in_placement
6621832635 doc: Adding link for RabbitMQ installation during nova deployment on controller node.
cfb99acd6a Fix live migration error logging
ebf5aca101 Add functional reproducer for bug 2102038
221a3e89e8 Revert "Support glance's new location API"
82856f95c6 libvirt: Use common naming convention for ephemeral disk labels
e3c494cbd9 [doc] Adding vGPUs max_instances caveat fix for virtual-gpu
bfbea63f3f Mention IRC topic update in PTL post-PTG checklist
28331fee3c Example NVMe cleaning script for one-time-use
e383b46545 [tool] Fix backport validator for non-SLURP
dec761b680 Disable NOVA_COMPILE_MDEV_SAMPLES to unblock CI
0552350a3b api: Add response body schemas for server diagnostics API
485ee768d6 api: Add response body schemas for remote consoles
22c372cbe0 api: Add response body schemas for server topology API
5f70e0ef57 api: Add response body schemas for image metadata APIs
64f70797d6 api: Add response body schemas for keypairs APIs
2b3eb6b015 api: Add response body schemas for server IPs APIs
c918fcc587 api: Add response body schemas for hypervisors APIs (3/3)
f5d9e5cb2f api: Add response body schemas for hypervisors APIs (2/3)
531ede50a3 api: Add response body schemas for hypervisors APIs (1/3)
2ca03367ad api: Add response body schemas for instance actions
f7a03e5834 api: Add response body schemas for hosts APIs
4520a058c8 doc: Add missing API samples
02a6c48b38 tests: Ensure all APIs have a response body schema
baf310ac28 api: Simplify parameter types
678bc4ae6e api: Only run format checks on strings
08dd30d3fc api: Add new, simpler api_version decorator
a722640b2f api: Only check minimum API version
d73a0861f8 api: Stop using wsgi.Controller.api_version to switch between API versions
89977c3661 api: Adjust validation helpers for a single-method future
9fd207ff90 reorder and extend pre-commit hooks
ebd75760e1 Allow autopep8 to fix more things
87c0c201a3 update pre-commit version pins
023be4f561 wsgi: Don't create, use lock in same line
2d4887491c Replace eventlet semaphores with threading one
7f4c47c642 [quota]Refactor group counting to scatter-gather
a5bcaf69b1 Remove python 3.9 support
5a55a78d51 live migration: Avoid volume rollback mismatches
ac765008c9 Remove superfluous monkey patching form func test
659710a626 split monkey_patching form import
02d72b9d56 Remove nova debugger functionality
a0dc4e8516 [hacking] N373 do not use eventlet primitives
3946a94538 Replace eventlet sleep with time.sleep
eab0de2900 Support glance's new location API
c12eebd4c6 Remove WSGIServer related config options
05bab98aba [doc]Describe file based GMR triggering
e25418c857 [doc]Remove eventlet based API endpoints
51eb60063f Remove WSGIService and WSGIServer classes
05b219746f Remove eventlet based WSGI server entry points
691d47e936 Remove workaround for ovn live migration
8cafefb2bd Amend functional reproducer for bug 1899835
509820f156 Use dict object for request_specs_dict in the _list_view
ee67362728 Functional tests for one-time-use devices
3dc42b8422 Add one-time-use devices docs and reno
28a266461a Support "one-time-use" PCI devices
c5efabbd07 Invalidate PCI-in-placement cached RPs during claim
ba00d60b95 Extend invalidate_rp to only invalidate cache
9947dac7ae FUP improve and add integration tests for PCI SR-IOV servers
2180c205b4 Fix disable memballoon device
98226b60f3 FUP: Improve libvirt fixture for hostdevs
c6a96a17db FUP Update pci-passthrough and virtual-gpu documentation
28f82ba912 FUP Add a warning to make non-explicit live migration request debugging easier
5ac94abfdb FUP improve comment accuracy and variable naming for tag removal
4e4262cd3d FUP Remove unnecessary PCI check
8dcbbe43e7 wrap wsgi_app.init_application with latch_error_on_raise
229fb3513a Ignore metadata tags in pci/stats _find_pool logic
9b7809b289 Fix missing backtick in configuration option help
65409f9483 Remove tags from README
5ef6eae174 Imported Translations from Zanata
932d2334c2 Update master for stable/2025.1
37888e875f ironic: fix logging of validation errors
32afd0c644 Reproduce bug/2098496
b193325eec Fix description of [pci] alias
5c50b8d5a9 doc: Remove non-existent [service_user] auth_strategy
50ca86d329 doc: Drop deprecated [api] auth_strategy
eb3a803cd7 unified limits: discover service ID and region ID
8c2df0035d Fix case sensitive comparison
ca85ee4ad6 Fix case-sensitivity for metadata keys
2102c7735b Drop CentOS 8 Stream
Diffstat (except docs and test files)
-------------------------------------
.pre-commit-config.yaml | 45 +-
.zuul.yaml | 58 +-
HACKING.rst | 2 +
README.rst | 6 -
api-guide/source/microversions.rst | 4 +-
api-guide/source/port_with_resource_request.rst | 2 +-
api-guide/source/versions.rst | 2 +-
api-ref/source/index.rst | 13 +
api-ref/source/os-volume-attachments-swap.inc | 60 +
api-ref/source/os-volume-attachments.inc | 55 +-
api-ref/source/os-volumes.inc | 10 +-
api-ref/source/parameters.yaml | 51 +-
api-ref/source/servers-actions.inc | 30 +-
.../images/images-details-get-resp.json | 24 +-
.../v2.31/create-serial-console-req.json | 6 +
.../os-keypairs/v2.92/keypairs-post-req.json | 7 +
.../v2.6/create-rdp-console-req.json | 6 +
.../v2.97/server-shares-create-tag-req.json | 6 +
.../v2.97/server-shares-delete-req.json | 5 +
.../os-shelve/v2.91/os-unshelve-az.json | 5 +
.../snapshot-create-req.json | 0
.../snapshot-create-resp.json | 4 +-
.../snapshots-detail-resp.json | 18 +-
.../snapshots-list-resp.json | 18 +-
.../snapshots-show-resp.json | 6 +-
.../attach-volume-to-server-req.json | 0
.../attach-volume-to-server-resp.json | 0
.../list-volume-attachments-resp.json | 0
.../update-volume-req.json | 0
.../v2.49/attach-volume-to-server-req.json | 0
.../v2.49/attach-volume-to-server-resp.json | 0
.../v2.49/list-volume-attachments-resp.json | 0
.../v2.49/update-volume-req.json | 0
.../v2.49/volume-attachment-detail-resp.json | 0
.../v2.70/attach-volume-to-server-req.json | 0
.../v2.70/attach-volume-to-server-resp.json | 0
.../v2.70/list-volume-attachments-resp.json | 0
.../v2.70/update-volume-req.json | 0
.../v2.70/volume-attachment-detail-resp.json | 0
.../v2.79/attach-volume-to-server-req.json | 0
.../v2.79/attach-volume-to-server-resp.json | 0
.../v2.79/list-volume-attachments-resp.json | 0
.../v2.79/update-volume-req.json | 0
.../v2.79/volume-attachment-detail-resp.json | 0
.../v2.85/attach-volume-to-server-req.json | 0
.../v2.85/attach-volume-to-server-resp.json | 0
.../v2.85/list-volume-attachments-resp.json | 0
.../update-volume-attachment-delete-flag-req.json | 0
.../v2.85/update-volume-req.json | 0
.../v2.85/volume-attachment-detail-resp.json | 0
.../v2.89/attach-volume-to-server-req.json | 0
.../v2.89/attach-volume-to-server-resp.json | 0
.../v2.89/list-volume-attachments-resp.json | 0
.../update-volume-attachment-delete-flag-req.json | 0
.../v2.89/volume-attachment-detail-resp.json | 0
.../volume-attachment-detail-resp.json | 0
.../os-volumes/os-volumes-detail-resp.json | 4 +-
.../os-volumes/os-volumes-get-resp.json | 6 +-
.../os-volumes/os-volumes-index-resp.json | 6 +-
.../os-volumes/os-volumes-post-req.json | 2 +-
.../os-volumes/os-volumes-post-resp.json | 6 +-
.../servers/v2.100/server-action-rebuild-resp.json | 9 +-
.../servers/v2.100/server-action-rebuild.json | 15 +
.../servers/v2.100/server-create-req.json | 25 +
.../servers/v2.100/server-get-resp.json | 9 +-
.../servers/v2.100/server-update-resp.json | 9 +-
.../servers/v2.100/servers-details-resp.json | 9 +-
.../servers/v2.98/server-action-rebuild-resp.json | 9 +-
.../servers/v2.98/server-update-resp.json | 9 +-
.../servers/v2.98/servers-details-resp.json | 9 +-
.../common_payloads/ImageMetaPropsPayload.json | 2 +-
.../admin/configuration/service-user-token.rst | 1 -
.../reference/libvirt-distro-support-matrix.rst | 32 +-
etc/nova/api-paste.ini | 11 -
nova/accelerator/cyborg.py | 22 +-
nova/api/auth.py | 22 +-
nova/api/openstack/__init__.py | 4 +-
nova/api/openstack/api_version_request.py | 22 +-
nova/api/openstack/auth.py | 85 -
nova/api/openstack/compute/admin_actions.py | 2 +
nova/api/openstack/compute/admin_password.py | 1 +
nova/api/openstack/compute/agents.py | 5 +
nova/api/openstack/compute/aggregates.py | 8 +-
.../openstack/compute/assisted_volume_snapshots.py | 11 +-
nova/api/openstack/compute/attach_interfaces.py | 1 +
nova/api/openstack/compute/availability_zone.py | 1 +
nova/api/openstack/compute/baremetal_nodes.py | 13 +-
nova/api/openstack/compute/cells.py | 10 +
nova/api/openstack/compute/certificates.py | 3 +
nova/api/openstack/compute/cloudpipe.py | 4 +
nova/api/openstack/compute/console_auth_tokens.py | 63 +-
nova/api/openstack/compute/console_output.py | 1 +
nova/api/openstack/compute/consoles.py | 5 +
nova/api/openstack/compute/create_backup.py | 5 +-
nova/api/openstack/compute/deferred_delete.py | 1 +
nova/api/openstack/compute/evacuate.py | 22 +-
nova/api/openstack/compute/extension_info.py | 1 +
nova/api/openstack/compute/fixed_ips.py | 4 +
nova/api/openstack/compute/flavor_access.py | 4 +-
nova/api/openstack/compute/flavors.py | 25 +-
nova/api/openstack/compute/flavors_extraspecs.py | 5 +-
nova/api/openstack/compute/floating_ip_dns.py | 8 +
nova/api/openstack/compute/floating_ip_pools.py | 3 +-
nova/api/openstack/compute/floating_ips.py | 13 +-
nova/api/openstack/compute/floating_ips_bulk.py | 5 +
nova/api/openstack/compute/fping.py | 3 +
nova/api/openstack/compute/hosts.py | 33 +-
nova/api/openstack/compute/hypervisors.py | 189 +-
nova/api/openstack/compute/image_metadata.py | 43 +-
nova/api/openstack/compute/images.py | 19 +-
nova/api/openstack/compute/instance_actions.py | 111 +-
nova/api/openstack/compute/ips.py | 9 +-
nova/api/openstack/compute/keypairs.py | 199 +-
nova/api/openstack/compute/limits.py | 47 +-
nova/api/openstack/compute/lock_server.py | 7 +-
nova/api/openstack/compute/migrate_server.py | 23 +-
nova/api/openstack/compute/migrations.py | 118 +-
nova/api/openstack/compute/multinic.py | 5 +-
nova/api/openstack/compute/networks.py | 16 +-
nova/api/openstack/compute/networks_associate.py | 6 +-
nova/api/openstack/compute/pause_server.py | 1 +
nova/api/openstack/compute/quota_classes.py | 53 +-
nova/api/openstack/compute/quota_sets.py | 91 +-
nova/api/openstack/compute/remote_consoles.py | 29 +-
nova/api/openstack/compute/rescue.py | 1 +
.../openstack/compute/rest_api_version_history.rst | 2 +-
nova/api/openstack/compute/routes.py | 6 +-
nova/api/openstack/compute/schemas/addresses.py | 25 -
.../api/openstack/compute/schemas/admin_actions.py | 4 +
nova/api/openstack/compute/schemas/agents.py | 5 +
nova/api/openstack/compute/schemas/aggregates.py | 20 +-
.../openstack/compute/schemas/availability_zone.py | 5 +-
nova/api/openstack/compute/schemas/cells.py | 10 +
nova/api/openstack/compute/schemas/certificates.py | 3 +
nova/api/openstack/compute/schemas/cloudpipe.py | 4 +
.../compute/schemas/console_auth_tokens.py | 10 +-
nova/api/openstack/compute/schemas/consoles.py | 5 +
nova/api/openstack/compute/schemas/fixed_ips.py | 4 +
.../openstack/compute/schemas/floating_ip_dns.py | 5 +
.../openstack/compute/schemas/floating_ips_bulk.py | 5 +
nova/api/openstack/compute/schemas/fping.py | 3 +
nova/api/openstack/compute/schemas/hosts.py | 83 +
nova/api/openstack/compute/schemas/hypervisors.py | 295 +++
.../openstack/compute/schemas/image_metadata.py | 27 +
nova/api/openstack/compute/schemas/images.py | 179 ++
.../openstack/compute/schemas/instance_actions.py | 164 +-
nova/api/openstack/compute/schemas/ips.py | 67 +-
nova/api/openstack/compute/schemas/keypairs.py | 147 +-
nova/api/openstack/compute/schemas/networks.py | 82 +
.../compute/schemas/networks_associate.py | 6 +-
.../openstack/compute/schemas/remote_consoles.py | 131 +-
.../schemas/security_group_default_rules.py | 5 +
.../openstack/compute/schemas/security_groups.py | 12 +-
.../compute/schemas/server_diagnostics.py | 136 ++
.../compute/schemas/server_external_events.py | 91 +-
.../api/openstack/compute/schemas/server_groups.py | 137 +-
.../openstack/compute/schemas/server_password.py | 11 +
.../openstack/compute/schemas/server_topology.py | 39 +
nova/api/openstack/compute/schemas/servers.py | 50 +-
nova/api/openstack/compute/schemas/services.py | 2 +-
nova/api/openstack/compute/schemas/shelve.py | 27 +-
.../compute/schemas/simple_tenant_usage.py | 8 +-
nova/api/openstack/compute/schemas/snapshots.py | 53 +
.../openstack/compute/schemas/tenant_networks.py | 3 +
.../compute/schemas/virtual_interfaces.py | 2 +
.../openstack/compute/schemas/volume_attachment.py | 18 -
.../compute/schemas/volume_attachments.py | 102 +
nova/api/openstack/compute/schemas/volumes.py | 99 -
.../compute/security_group_default_rules.py | 5 +
nova/api/openstack/compute/security_groups.py | 15 +-
nova/api/openstack/compute/server_diagnostics.py | 5 +-
.../openstack/compute/server_external_events.py | 23 +-
nova/api/openstack/compute/server_groups.py | 19 +-
nova/api/openstack/compute/server_migrations.py | 50 +-
nova/api/openstack/compute/server_password.py | 3 +
nova/api/openstack/compute/server_shares.py | 13 +-
nova/api/openstack/compute/server_tags.py | 12 +-
nova/api/openstack/compute/server_topology.py | 4 +-
nova/api/openstack/compute/servers.py | 67 +-
nova/api/openstack/compute/services.py | 42 +-
nova/api/openstack/compute/shelve.py | 1 +
nova/api/openstack/compute/simple_tenant_usage.py | 45 +-
nova/api/openstack/compute/snapshots.py | 151 ++
nova/api/openstack/compute/suspend_server.py | 1 +
nova/api/openstack/compute/tenant_networks.py | 11 +-
nova/api/openstack/compute/versions.py | 6 +-
nova/api/openstack/compute/versionsV21.py | 1 +
nova/api/openstack/compute/views/flavors.py | 9 +-
.../compute/views/{addresses.py => ips.py} | 0
nova/api/openstack/compute/views/keypairs.py | 2 -
nova/api/openstack/compute/views/servers.py | 86 +-
nova/api/openstack/compute/virtual_interfaces.py | 2 +
nova/api/openstack/compute/volume_attachments.py | 397 ++++
nova/api/openstack/compute/volumes.py | 531 +----
nova/api/openstack/versioned_method.py | 35 -
nova/api/openstack/wsgi.py | 217 +-
nova/api/openstack/wsgi_app.py | 8 +
nova/api/validation/__init__.py | 155 +-
nova/api/validation/extra_specs/hw.py | 66 +-
nova/api/validation/parameter_types.py | 165 +-
nova/api/validation/response_types.py | 70 +
nova/api/validation/validators.py | 74 +-
nova/cmd/__init__.py | 4 +-
nova/cmd/api.py | 71 -
nova/cmd/api_metadata.py | 52 -
nova/cmd/api_os_compute.py | 51 -
nova/cmd/baseproxy.py | 5 +-
nova/cmd/compute.py | 2 -
nova/cmd/conductor.py | 2 -
nova/cmd/manage.py | 4 +-
nova/cmd/novncproxy.py | 2 -
nova/cmd/scheduler.py | 14 +-
nova/cmd/serialproxy.py | 2 -
nova/cmd/spicehtml5proxy.py | 2 -
nova/compute/api.py | 10 +-
nova/compute/claims.py | 26 -
nova/compute/manager.py | 243 +-
nova/compute/pci_placement_translator.py | 299 ++-
nova/compute/resource_tracker.py | 39 +-
nova/compute/rpcapi.py | 1 +
nova/compute/stats.py | 6 +
nova/conductor/manager.py | 11 +-
nova/conductor/tasks/live_migrate.py | 4 +
nova/conf/api.py | 59 +-
nova/conf/base.py | 41 +-
nova/conf/compute.py | 2 +-
nova/conf/database.py | 2 +-
nova/conf/libvirt.py | 9 +-
nova/conf/pci.py | 8 +-
nova/conf/remote_debug.py | 71 -
nova/conf/scheduler.py | 8 +-
nova/conf/service.py | 79 -
nova/conf/wsgi.py | 147 --
nova/context.py | 58 +-
nova/db/api/alembic.ini | 4 +
nova/db/api/models.py | 3 +-
nova/db/main/alembic.ini | 4 +
nova/db/main/api.py | 51 +-
nova/db/main/models.py | 3 +-
nova/debugger.py | 60 -
nova/exception.py | 11 +
nova/hacking/checks.py | 21 +-
nova/image/glance.py | 32 +-
nova/limit/utils.py | 75 +-
nova/locale/cs/LC_MESSAGES/nova.po | 32 +-
nova/locale/de/LC_MESSAGES/nova.po | 37 +-
nova/locale/es/LC_MESSAGES/nova.po | 44 +-
nova/locale/fr/LC_MESSAGES/nova.po | 49 +-
nova/locale/it/LC_MESSAGES/nova.po | 45 +-
nova/locale/ja/LC_MESSAGES/nova.po | 37 +-
nova/locale/ko_KR/LC_MESSAGES/nova.po | 37 +-
nova/locale/pt_BR/LC_MESSAGES/nova.po | 35 +-
nova/locale/ru/LC_MESSAGES/nova.po | 43 +-
nova/locale/tr_TR/LC_MESSAGES/nova.po | 28 +-
nova/locale/zh_CN/LC_MESSAGES/nova.po | 35 +-
nova/locale/zh_TW/LC_MESSAGES/nova.po | 34 +-
nova/monkey_patch.py | 83 +-
nova/network/model.py | 23 +-
nova/network/neutron.py | 23 +-
nova/notifications/objects/image.py | 5 +-
nova/objects/aggregate.py | 11 +-
nova/objects/fields.py | 48 +
nova/objects/image_meta.py | 28 +-
nova/objects/instance.py | 5 +-
nova/objects/pci_device.py | 12 +-
nova/objects/service.py | 15 +-
nova/pci/devspec.py | 11 +
nova/pci/manager.py | 22 +-
nova/pci/request.py | 60 +-
nova/pci/stats.py | 59 +-
nova/policies/assisted_volume_snapshots.py | 18 +-
nova/policies/base.py | 53 +-
nova/policies/migrate_server.py | 49 +-
nova/policies/migrations.py | 62 +-
nova/policies/server_external_events.py | 10 +-
nova/policies/servers_migrations.py | 50 +-
nova/policies/volumes_attachments.py | 9 +-
nova/privsep/libvirt.py | 13 -
nova/quota.py | 46 +-
nova/rpc.py | 4 +-
nova/scheduler/client/report.py | 13 +-
nova/scheduler/host_manager.py | 2 +-
nova/scheduler/manager.py | 2 +-
nova/scheduler/request_filter.py | 22 +
nova/scheduler/utils.py | 19 +-
nova/service.py | 347 ---
nova/test.py | 23 +-
.../snapshot-create-req.json.tpl | 0
.../snapshot-create-resp.json.tpl | 2 +-
.../snapshots-detail-resp.json.tpl | 12 +-
.../snapshots-list-resp.json.tpl | 12 +-
.../snapshots-show-resp.json.tpl | 4 +-
.../attach-volume-to-server-req.json.tpl | 0
.../attach-volume-to-server-resp.json.tpl | 0
.../list-volume-attachments-resp.json.tpl | 0
.../update-volume-req.json.tpl | 0
.../v2.49/attach-volume-to-server-req.json.tpl | 0
.../v2.49/attach-volume-to-server-resp.json.tpl | 0
.../v2.49/list-volume-attachments-resp.json.tpl | 0
.../v2.49/update-volume-req.json.tpl | 0
.../v2.49/volume-attachment-detail-resp.json.tpl | 0
.../v2.70/attach-volume-to-server-req.json.tpl | 0
.../v2.70/attach-volume-to-server-resp.json.tpl | 0
.../v2.70/list-volume-attachments-resp.json.tpl | 0
.../v2.70/update-volume-req.json.tpl | 0
.../v2.70/volume-attachment-detail-resp.json.tpl | 0
.../v2.79/attach-volume-to-server-req.json.tpl | 0
.../v2.79/attach-volume-to-server-resp.json.tpl | 0
.../v2.79/list-volume-attachments-resp.json.tpl | 0
.../v2.79/update-volume-req.json.tpl | 0
.../v2.79/volume-attachment-detail-resp.json.tpl | 0
.../v2.85/attach-volume-to-server-req.json.tpl | 0
.../v2.85/attach-volume-to-server-resp.json.tpl | 0
.../v2.85/list-volume-attachments-resp.json.tpl | 0
...date-volume-attachment-delete-flag-req.json.tpl | 0
.../v2.85/update-volume-req.json.tpl | 0
.../v2.85/volume-attachment-detail-resp.json.tpl | 0
.../v2.89/attach-volume-to-server-req.json.tpl | 0
.../v2.89/attach-volume-to-server-resp.json.tpl | 0
.../v2.89/list-volume-attachments-resp.json.tpl | 0
...date-volume-attachment-delete-flag-req.json.tpl | 0
.../v2.89/update-volume-req.json.tpl | 0
.../v2.89/volume-attachment-detail-resp.json.tpl | 0
.../volume-attachment-detail-resp.json.tpl | 0
.../os-volumes/os-volumes-detail-resp.json.tpl | 4 +-
.../os-volumes/os-volumes-get-resp.json.tpl | 4 +-
.../os-volumes/os-volumes-index-resp.json.tpl | 4 +-
.../os-volumes/os-volumes-post-req.json.tpl | 2 +-
.../os-volumes/os-volumes-post-resp.json.tpl | 4 +-
.../v2.100/server-action-rebuild-resp.json.tpl | 9 +-
.../servers/v2.100/server-get-resp.json.tpl | 9 +-
.../servers/v2.100/server-update-resp.json.tpl | 9 +-
.../servers/v2.100/servers-details-resp.json.tpl | 9 +-
.../v2.98/server-action-rebuild-resp.json.tpl | 9 +-
.../servers/v2.98/server-details-resp.json.tpl | 9 +-
.../servers/v2.98/server-get-resp.json.tpl | 9 +-
.../servers/v2.98/server-update-resp.json.tpl | 9 +-
.../servers/v2.98/servers-details-resp.json.tpl | 9 +-
.../versions/v2-version-get-resp.json.tpl | 6 +-
.../versions/versions-get-resp.json.tpl | 4 +-
.../functional/compute/test_live_migration.py | 1 -
.../libvirt/test_device_bus_migration.py | 18 +-
.../functional/libvirt/test_live_migration.py | 4 -
.../functional/libvirt/test_numa_live_migration.py | 4 -
.../functional/libvirt/test_pci_in_placement.py | 524 ++++-
.../functional/libvirt/test_pci_sriov_servers.py | 2410 ++++++++++++++++----
.../functional/libvirt/test_report_cpu_traits.py | 461 +++-
.../functional/libvirt/test_rescue_deleted_base.py | 14 +-
.../functional/regressions/test_bug_1404867.py | 1 -
.../functional/regressions/test_bug_1558866.py | 2 +-
.../functional/regressions/test_bug_1669054.py | 1 -
.../functional/regressions/test_bug_1732947.py | 1 -
.../functional/regressions/test_bug_1823370.py | 1 -
.../functional/regressions/test_bug_1843708.py | 1 -
.../functional/regressions/test_bug_1886418.py | 1 -
.../functional/regressions/test_bug_1895696.py | 6 +-
.../functional/regressions/test_bug_1899835.py | 125 +-
.../functional/regressions/test_bug_1902925.py | 2 -
.../functional/regressions/test_bug_1928063.py | 16 +-
.../functional/regressions/test_bug_1939545.py | 2 -
.../functional/regressions/test_bug_1943431.py | 49 +-
.../functional/regressions/test_bug_1944619.py | 2 -
.../functional/regressions/test_bug_1980720.py | 4 +-
.../functional/regressions/test_bug_2007968.py | 2 -
.../functional/regressions/test_bug_2040264.py | 2 -
.../functional/regressions/test_bug_2098496.py | 135 ++
.../functional/regressions/test_bug_2102038.py | 59 +
.../functional/regressions/test_bug_2111440.py | 48 +
.../functional/regressions/test_bug_2112187.py | 67 +
.../functional/test_servers_resource_request.py | 6 +
.../unit/api/openstack/compute/microversions.py | 64 +-
.../unit/api/openstack/compute/test_aggregates.py | 35 +-
.../openstack/compute/test_assisted_snapshots.py | 255 +++
.../openstack/compute/test_availability_zone.py | 2 +-
.../api/openstack/compute/test_certificates.py | 8 +-
.../unit/api/openstack/compute/test_cloudpipe.py | 2 +-
.../api/openstack/compute/test_deferred_delete.py | 6 +-
.../unit/api/openstack/compute/test_disk_config.py | 2 +-
.../api/openstack/compute/test_extended_ips.py | 4 +-
.../api/openstack/compute/test_extended_ips_mac.py | 4 +-
.../api/openstack/compute/test_flavor_access.py | 2 +-
.../api/openstack/compute/test_flavor_disabled.py | 2 +-
.../api/openstack/compute/test_flavor_manage.py | 4 +-
.../api/openstack/compute/test_flavorextradata.py | 2 +-
.../unit/api/openstack/compute/test_flavors.py | 128 +-
.../openstack/compute/test_flavors_extraspecs.py | 2 +-
.../unit/api/openstack/compute/test_hypervisors.py | 85 +-
.../api/openstack/compute/test_image_metadata.py | 2 +-
.../unit/api/openstack/compute/test_images.py | 384 ++--
.../unit/api/openstack/compute/test_keypairs.py | 173 +-
.../api/openstack/compute/test_microversions.py | 79 +-
.../unit/api/openstack/compute/test_quotas.py | 29 +-
.../api/openstack/compute/test_remote_consoles.py | 7 +-
.../unit/api/openstack/compute/test_rescue.py | 2 +-
.../unit/api/openstack/compute/test_schemas.py | 96 +-
.../api/openstack/compute/test_security_groups.py | 80 +-
.../api/openstack/compute/test_server_actions.py | 8 +-
.../openstack/compute/test_server_diagnostics.py | 2 +-
.../unit/api/openstack/compute/test_server_tags.py | 83 +-
.../api/openstack/compute/test_server_topology.py | 4 +-
.../unit/api/openstack/compute/test_servers.py | 477 ++--
.../unit/api/openstack/compute/test_snapshots.py | 93 +-
.../api/openstack/compute/test_tenant_networks.py | 4 +-
.../unit/api/openstack/compute/test_urlmap.py | 5 +-
.../unit/api/openstack/compute/test_versions.py | 16 +-
.../openstack/compute/test_volume_attachments.py | 1394 +++++++++++
.../unit/api/openstack/compute/test_volumes.py | 1901 ++-------------
.../unit/api/openstack/test_api_version_request.py | 39 +-
.../unit/compute/test_pci_placement_translator.py | 373 ++-
.../unit/conductor/tasks/test_live_migrate.py | 7 +-
.../notifications/objects/test_notification.py | 2 +-
.../policies/test_assisted_volume_snapshots.py | 8 +-
.../unit/policies/test_server_external_events.py | 9 +-
.../unit/policies/test_simple_tenant_usage.py | 5 +-
.../scheduler/weights/test_weights_image_props.py | 2 +-
nova/utils.py | 339 +--
nova/virt/disk/mount/nbd.py | 2 +-
nova/virt/driver.py | 50 +-
nova/virt/hardware.py | 191 +-
nova/virt/ironic/driver.py | 12 +-
nova/virt/libvirt/config.py | 128 +-
nova/virt/libvirt/driver.py | 587 +++--
nova/virt/libvirt/host.py | 47 +-
nova/virt/zvm/driver.py | 4 +-
nova/wsgi/metadata.py | 3 +-
nova/wsgi/osapi_compute.py | 3 +-
pyproject.toml | 6 +
.../add-policy-manager-role-e245ba669eb88b26.yaml | 113 +
.../add-policy-service-role-eaa391e30431a9d6.yaml | 43 +
...md-sev-es-libvirt-support-089ec0e394156d0a.yaml | 12 +
.../notes/bp-xml-image-meta-037f4eba59f0121e.yaml | 23 +
...1-ephemeral-disk-fs-label-504484c4522e6d6a.yaml | 6 +
.../notes/bug-2095364-ffbf67c0ae3f53b5.yaml | 15 +
...i-hostdevs-than-requested-0139018213f1be96.yaml | 12 +
...age-id-xml-after-unshelve-e5f6116043ba1c41.yaml | 12 +
.../notes/bug-2112187-e1c1d40f090e421b.yaml | 36 +
...ory-encryption-is-enabled-142e64f6b9ef3135.yaml | 7 +
...-performance-optimization-6f3a2c8e5d9b1a4e.yaml | 23 +
.../notes/deprecate-v2-api-22b1ca9c35c321bc.yaml | 9 +
.../notes/flamingo-prelude-22a2782315ce0808.yaml | 52 +
...nic-validate-node-message-6a8b1eedbddd06fd.yaml | 7 +
.../latch-error-on-raise-cf2da71a12b5f55f.yaml | 9 +
...m_memory_encrypted_guests-61dc3dcd2ce9d8ea.yaml | 9 +
...eflate-freepage-reporting-13c25d410cca9d23.yaml | 11 +
...onfig-files-with-mod_wsgi-f114ea5fdd8b9a51.yaml | 2 +-
.../one-time-use-devices-b62247dd2a4c7a15.yaml | 7 +
...e-live-migration-rollback-7de399d9b3979f79.yaml | 9 +
.../remote-debugger-removal-07e26d43c561d495.yaml | 9 +
.../remove-api-eventlet-5a932ef45b9af79f.yaml | 5 +
...ron_default_tenant_id-opt-7ca3647dc27f8fcc.yaml | 26 +
.../sound-model-extra-specs-2bcbe644b889005c.yaml | 12 +
.../notes/threaded-nova-api-d8ec6704dcf66fb3.yaml | 11 +
.../threaded-nova-scheduler-dd4649b987f33025.yaml | 11 +
...sb-controller-extra-specs-a2209e3563d18a26.yaml | 13 +
releasenotes/source/2025.1.rst | 6 +
releasenotes/source/index.rst | 1 +
.../source/locale/ja/LC_MESSAGES/releasenotes.po | 56 +-
requirements.txt | 6 +-
setup.cfg | 6 +-
threading_unit_test_excludes.txt | 94 +
tools/check-cherry-picks.sh | 7 +-
tools/flake8wrap.sh | 9 +-
tools/generate-exclude.sh | 1 +
tox.ini | 26 +-
666 files changed, 20396 insertions(+), 11901 deletions(-)
Requirements updates
--------------------
diff --git a/requirements.txt b/requirements.txt
index 1670ecc5bb..89873efe09 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -27 +27 @@ python-neutronclient>=7.1.0 # Apache-2.0
-python-glanceclient>=2.8.0 # Apache-2.0
+python-glanceclient>=4.7.0 # Apache-2.0
@@ -47 +47 @@ oslo.i18n>=5.1.0 # Apache-2.0
-oslo.service>=2.8.0 # Apache-2.0
+oslo.service[threading]>=4.2.0 # Apache-2.0
@@ -54 +54 @@ os-resource-classes>=1.1.0 # Apache-2.0
-os-traits>=3.3.0 # Apache-2.0
+os-traits>=3.5.0 # Apache-2.0
1
0