Current Series Release Notes¶
8.1.0-10¶
Bug Fixes¶
Fixed the ironic-neutron-agent silently stopping processing notifications when ironic-api was unavailable during agent startup. Stale agent cleanup is now best-effort and no longer aborts startup, and a node lookup that fails with anything other than a not-found error no longer marks a live agent for removal.
A device in
[networking_baremetal] enabled_devicesthat does not setdriveris now actually skipped. Previously it was logged as being ignored but was still returned to the mechanism driver, which then looked up a driver entrypoint namedNone. The service failed to start withTypeError: sequence item 0: expected str instance, NoneType found, which gave no indication of the option that was missing.
The ironic-neutron-agent no longer registers the OVN
LocalnetPortEventhandler twice when event-driven L2VNI trunk reconciliation is enabled. The handler was registered both inline during agent initialization and by_register_ovn_event_handlers(). Both used the same cached event-only OVN Northbound connection, so every localnet port create or delete triggered two L2VNI trunk reconciliations.
Setting
[l2vni] enable_l2vni_trunk_reconciliation = falsenow fully disables L2VNI trunk reconciliation in the ironic-neutron-agent. Previously it only stopped the periodic reconciliation loop, because[l2vni] enable_l2vni_trunk_reconciliation_eventswas treated as an independent switch and also defaults totrue. The agent therefore still built the L2VNI trunk manager, connected to OVN, registered the localnet port event handler, and ran a full reconcile, including creating the anchor networks, on every OVN localnet port change. Deployments that do not use the L2VNI feature saw repeated errors from anchor network creation, for example when[l2vni] l2vni_subport_anchor_network_typeis not one of the configured ML2type_drivers.enable_l2vni_trunk_reconciliationis now the single master switch for the feature, matching the documented behaviour of the events option, and enabling only the events option logs a warning and is ignored.
The ironic-neutron-agent notification listener pool queue is now named after
[DEFAULT] hostrather than always the hostname reported by the operating system.hoststill defaults to that hostname, so there is no change unless it is set. Quorum queues cannot be declaredauto_delete, so the pool queue is only reused across restarts when its name is stable; deployments where the hostname is not stable, such as a Kubernetes Deployment where it is the pod name, left a stale queue behind on every rollout. Those deployments can now sethostto a durable value.
Device option values are now checked when the mechanism driver starts, rather than when the driver first reads each option. oslo.config converts and validates a value on first access, not when the configuration is parsed, so a malformed value in a device section previously went unnoticed until a port was bound or a network created, and surfaced there as a
ConfigFileValueError. Values such asmanage_lacp_aggregates = perhapsor an unrecognised entry indisabled_propertiesare now reported at startup, and all of a device’s invalid options are reported together.