Skip to content

Merge https://github.com/openstack/ironic:master (ef253eb) into main#391

Open
ironic-merge-bot[bot] wants to merge 39 commits intoopenshift:mainfrom
openshift-metal3:ironic-bot-master
Open

Merge https://github.com/openstack/ironic:master (ef253eb) into main#391
ironic-merge-bot[bot] wants to merge 39 commits intoopenshift:mainfrom
openshift-metal3:ironic-bot-master

Conversation

@ironic-merge-bot
Copy link
Copy Markdown

No description provided.

Afonne-CID and others added 2 commits April 1, 2026 16:07
A follow-up to 956500 (periodic cleanup of stale conductors - offline
for longer than a configured timeout period.)

New review feedback identified that the original patch never NULLs
`conductor_affinity`, so deleting a conductor will fail with an FK
constraint violation.

Unit tests were added by AI.

Assisted-by: Claude Opus 4.6
Change-Id: Ie557c6ec0f96d013d182f9c85e8f41cac4cbd8af
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
@openshift-ci openshift-ci bot requested review from derekhiggins and elfosardo April 6, 2026 10:15
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Apr 6, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: ironic-merge-bot[bot]
Once this PR has been reviewed and has the lgtm label, please assign iurygregory for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

juliakreger and others added 11 commits April 7, 2026 06:52
The IRONIC_RAMDISK_TYPE setting allowed users to choose between
'tinyipa' and 'dib' ramdisk types. With tinyipa support dropped,
this setting is no longer needed. DIB is now the only ramdisk
type and is used by default.

This change removes:
- IRONIC_RAMDISK_TYPE variable and validation
- tinyipa-specific build functions (build_tinyipa_ramdisk,
  rebuild_tinyipa_for_ansible)
- is_ansible_with_tinyipa helper function
- tinyipa references from documentation and CI configuration

Assisted-By: Claude Code - Claude Sonnet 4.5
Change-Id: Ic7222888a6ed8e8353ca20a5a5b1aa1c6a948b53
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
As early as 2024 we've been warning operators the iLO driver was going
away, and it was formally deprecated in 2025.2. We now remove it fully.

iLO 5 and newer devices are still supported by redfish driver.

Generated-by: claude-code
Change-Id: Iccc45da6eb3b8109009e3217028cc07f5782dde0
Signed-off-by: Jay Faulkner <jay@jvf.cc>
When using devstack if the test node already has its port plugged in,
first clean it up and then re-plug the port to make the process more
idempotent.

Change-Id: I61a2ae6930b419f33f2763d2cf24f1fde7329032
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
In other places we look up the qrouter and only reference that specific
one but in this place we touched all qrouters. Change the behavior to
match the other call sites to avoid issues with multiple ./stack.sh
calls in devstack.

Change-Id: I33e2026cf3cad0077e8075c258eae4f7af01fc86
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
In cases when the machine has already had devstack on it, this route
might exist because it is not cleaned up. Change the ip route call to
use replace to be an idempotent call like other callers in the script.

Change-Id: Ic0d788abe93412f2d81f438d4606dcd8fb59ed41
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
The driver was removed nearly a decade ago [1].

[1] I9bc9f4cbd916f040a636b967ec5556197ad3d8a8

Change-Id: I6735b5cf8bed2012903d58d006dc731ad205d107
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
This commit enables project-scoped sidebar search in Ironic docs using the existing openstackdocstheme option (sidebar_search=True).

It allows users to search within Ironic documentation directly, and improves the search experience when navigating from Ironic pages.

It also refines a few top-level headings to make Ironic content easier to identify in broader search contexts.

Closes-Bug: #2072362

Change-Id: Iaf42d58e63c2f3fc62c1eac72814360972bbe29e
Signed-off-by: Anishere Mariam Adeola <maradeola4me@gmail.com>
@ironic-merge-bot ironic-merge-bot bot changed the title Merge https://github.com/openstack/ironic:master (eda12b9) into main Merge https://github.com/openstack/ironic:master (ddf1eb2) into main Apr 13, 2026
cardoe and others added 12 commits April 13, 2026 10:33
Today runbooks must be named after a trait that exists on the node in
order to be used. This change decouples the runbook name from the trait
matching logic by introducing a dedicated traits set on each runbook.

Changes:
- Add a new runbook_traits table (runbook_id, trait composite PK)
  mirroring the node_traits design, with a DB migration that seeds
  each existing runbook's traits from its current name.
- Add a description column to the runbooks table, consistent with
  other Ironic objects.
- Bump Runbook versioned object to 1.2 (description + traits fields).
  Add RunbookTrait (1.0) and RunbookTraitList (1.0) objects.
- Introduce API microversion v1.112:
  - Runbook name may now be any valid logical string; the CUSTOM_/
    standard-trait format restriction is lifted.
  - traits list included in runbook create/get/list responses.
  - New sub-resource /v1/runbooks/{ident}/traits with GET, PUT, and
    DELETE endpoints following the node traits pattern.
  - PATCH /v1/runbooks does not patch traits; use the sub-resource.
- Update _handle_runbook in the node provision API: for v1.112+,
  check that the node has at least one trait that intersects with the
  runbook's traits set. For earlier versions the legacy name-equals-
  trait check is preserved unchanged.
- Update the conductor automated-cleaning runbook validator to apply
  the same intersection logic when runbook.traits is non-empty, and
  fall back to the legacy name check otherwise.

Assisted-by: Claude Sonnet 4.6
Change-Id: Ifc21e37a257f4749170e2802324f868185cb1886
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
[1] broke ovn based jobs as there is no qrouter
namespace when running with ovn. This patch makes
the commands run only when agent is not OVN.

[1] https://review.opendev.org/c/openstack/ironic/+/983715

Change-Id: I0042f918a12368e3b01298ec345ed435a58ad336
Signed-off-by: Yatin Karel <ykarel@redhat.com>
In general we should not upgrade the base image when building
a container as the base image is already rebuilt regularly.
Also setting the base image explicitely to one recommended
by ART.
Adds the parent node support and tests in one change
including all DB/Model/API changes along with RBAC and
basic API tests.

* Updates the API version to 1.83
* Adds parent_node and related index to the nodes table.
* Adds new API parameters to list by parent node relationship.

Depends-On: https://review.opendev.org/c/openstack/ironic/+/883967
Change-Id: I8d64fee7105718199986db4994e13352d639f04f
Change-Id: I22c8aae89d24d3ff330f10f1e0d43461fd6e52d4
elfosardo and others added 14 commits April 15, 2026 10:13
We need to pin libraries that are still compatible with python 3.9
as upstream has already dropped compatibility.
Back when we developed service, we expected operators to
iterate to fix their issues, but we also put in abort code.

We just never wired in the abort code to the abort verb.

It really seems like we really should have done that, and
this change changes API and Conductor code path to make this
happen.

Closes-Bug: 2119989

Assisted-By: Claude Clode - Claude Sonnet 4
Change-Id: Ic02ba87485a676e77563057427ab94953bea2cc2
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
(cherry picked from commit 1eda807)
Currently, Ironic codebase allows aborting servicing state regardless
of whether a servicing step has abortable flag set or not. This patch
fixes this by adding handling of service wait states to abort code paths
and adding the missing state machine transition.

Generated-By: Claude Code Sonnet 3.5
Change-Id: Ie07490bdb9c6461bd6ac7a6315773dcfb13592f9
Signed-off-by: Jacob Anders <janders@redhat.com>
(cherry picked from commit fa8a8fb)
@ironic-merge-bot ironic-merge-bot bot changed the title Merge https://github.com/openstack/ironic:master (ddf1eb2) into main Merge https://github.com/openstack/ironic:master (ef253eb) into main Apr 15, 2026
@openshift-ci
Copy link
Copy Markdown

openshift-ci bot commented Apr 15, 2026

@ironic-merge-bot[bot]: all tests passed!

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants