Commit graph

2609 commits

Author SHA1 Message Date
Zuul
534e9ff6b8 Merge "Support filtering portgroups by shard" 2025-12-19 16:51:36 +00:00
Zuul
3b4e3801a1 Merge "Remove ovn vtep support" 2025-12-18 23:10:55 +00:00
Zuul
0b6126ce28 Merge "OCI Basic Auth/Tag access" 2025-12-18 22:57:32 +00:00
Jay Faulkner
4b58b8a823 Support filtering portgroups by shard
This was somehow missed during initial implementation. Adding ability to
filter portgroup by shard. This was mostly vibe coded with claude, with
me interupting to suggest better implementations when it did something
silly. Tested manually by a human using fake drivers :).

Closes-bug: #2134566
Generated-by: Claude code (claude)
Signed-off-by: Jay Faulkner <jay@jvf.cc>
Change-Id: Ic67c02763c2d832f616dc4526e4be891d639b976
2025-12-18 11:24:34 -08:00
Doug Goldstein
2c118a4d4c
fix: inspection rules docs to match the code
These inspection rules actions are implemented but were not documented
so add some documentation for them. The redfish inspection interface
also supports inspection rules.

Change-Id: I65894191affd9171bf68dc9b15725ed34a9724f9
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025-12-17 10:18:52 -06:00
Doug Goldstein
0255cc98a7
update inspection rules docs and code to the same order
Updated the docs and code to match the same order and to break out each
operation like it is in the code. Fixed incorrect indent of an example.
This is just mechanical to make visual inspection of the docs to the
code easier.

Change-Id: Ic96c5a1993d20347968c23c60393a4cde2de9a0c
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025-12-16 16:42:51 -06:00
Zuul
6fec6712f8 Merge "Add Redfish LLDP data collection support to the Redfish inspection interface." 2025-12-16 00:20:45 +00:00
Julia Kreger
52300e0a62 OCI Basic Auth/Tag access
In order to support the deployment of OCI images utilizing bifrost,
we also need to explicitly support basic authentication.

This has been extended to support inclusion of the authentication
credentials into the pull secret string, and fallback on the deploy
interface settings for static configuration. While this will likely
never be perfect, it is at least a forward step to better supporting
a variety of use cases.

Additionally, doing some of this highlighted some extraneous guard
rail style checks which exist elsewhere in the overall image handling
flow. A exeception check was added to prevent tag based deployments
from failing because the existing code structure of the guard rail
checks cannot gain the context around basic auth.
In part becasue the check directly uses the image_source as well,
as opposed to any other state data which is presently available
in deploy_utils when the image information is identified.
That situation highlights why additional fixes are needed,
but bug 2133885 was opened for that separately.

Claude also helped me out with the unit tests.

Assisted-By: Claude Code - Claude Sonnet 4.5
Change-Id: I13f4d5cd8b98ad88e7b6088c79c7b014b6461668
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
2025-12-15 13:13:52 -08:00
Zuul
42883161cb Merge "docs: a little more clarity around the state of ipxe+uefi" 2025-12-12 19:00:01 +00:00
Nidhi Rai
e273bb958a Add Redfish LLDP data collection support to the Redfish inspection interface.
- _collect_lldp_data(): Collects LLDP data from Redfish NetworkAdapter Ports via Sushy library, walking the Chassis/NetworkAdapter/Port hierarchy
- Integration with inspect_hardware(): LLDP collection is called during hardware inspection and results are stored in plugin_data['parsed_lldp']

The implementation supports standard Redfish LLDP data from Port.Ethernet.LLDPReceive fields and can be extended by vendor-specific implementations (like,  Dell DRAC OEM endpoints) through method overriding.

Change-Id: I25889b2a2eb8f6a2d796dfbeb598875a7c07b22c
Signed-off-by: Nidhi Rai <nidhi.rai94@gmail.com>
2025-12-12 09:40:00 +05:30
Zuul
f0d8016bdb Merge "Add documentation regarding the is_root_volume RAID config" 2025-12-09 19:53:10 +00:00
Julia Kreger
094337f14d Remove ovn vtep support
As discussed during the PTG, VTEP support for OVN is being
removed in order to eliminate confusion and also the Ironic
community is working on a suitable solution to these problems
which integrates with Neutron.

Closes-Bug: 2106460
Change-Id: I4147371c28cf786edb6f29ea83e3b7103f268347
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
Signed-off-by: Jay Faulkner <jay@jvf.cc>
2025-12-08 13:28:30 -08:00
Zuul
d2d4c57ffa Merge "Add a kubernetes provider for console container" 2025-12-05 16:38:18 +00:00
Zuul
ba763f199e Merge "Drop xinetd/tftpd on CentOS 9" 2025-12-05 16:30:11 +00:00
Steve Baker
28168c4168 Add a kubernetes provider for console container
A new ``ironic.console.container`` provider is added called
``kubernetes`` which allows Ironic conductor to manage console
containers as Kubernetes pods. The kubernetes resources are defined in
the template file configured by ``[vnc]kubernetes_container_template``
and the default template creates one secret to store the app info, and
one pod to run the console container.

It is expected that Ironic conductor is deployed inside the kubernetes
cluster. The associated service account will need roles and bindings
which allow it to manage the required resources (with the default
template this will be secrets and pods).

This provider holds the assumption that ironic-novnc will be deployed in
the same kubernetes cluster, and so can connect to the VNC servers via
the pod's ``status.hostIP``.

Assisted-By: gemini
Change-Id: Ib91f7d7c15be51d68ebf886e44efaf191a14437b
Signed-off-by: Steve Baker <sbaker@redhat.com>
2025-12-04 11:25:05 -08:00
Jakub Jelinek
e4ac3dd76b Add documentation regarding the is_root_volume RAID config
The functionality has been implemented in the change:
https://review.opendev.org/c/openstack/ironic-python-agent/+/963200
This change documents the possibility to specify the is_root_volume
parameter of the target_raid_config of a node, which either makes
it the root volume, or prevents it from becoming a root volume.

Change-Id: I72fab180eaf361f9bedb04a1a24dfb9bcdf230cf
Signed-off-by: Jakub Jelinek <jakub.jelinek@cern.ch>
2025-12-04 13:04:07 +00:00
Zuul
7495f77258 Merge "Trivial: Fix typo in documentation" 2025-12-02 15:49:38 +00:00
Afonne-CID
1b2504428c Trivial: Fix typo in documentation
Change-Id: Ie43b754f87f9fa0e6e26c17c9a1f30936b96f868
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
2025-12-02 14:50:46 +01:00
Afonne-CID
91159a4394 Drop xinetd/tftpd on CentOS 9
Drop xinetd/tftpd on CentOS 9 to fix TFTP setup failure

Closes-Bug: #2098533
Assisted-by: Claude 4.5 Sonnet
Change-Id: I5ed12279d446839587c512194d1230a27622eb00
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
2025-12-02 14:49:39 +01:00
Takashi Kajinami
d12fc12a88 Drop remaining references to ironic-inspector
Remove a few remaining references to ironic-inspector, which were not
covered by 32dd5ec596 which removed
integration with ironic-inspector.

Change-Id: Ib391c0f697c7f90f99660cf333deb0cd25a3bc05
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
2025-11-28 01:35:34 +09:00
Zuul
52a5dcff6d Merge "Remove inspector inspect interface" 2025-11-25 06:50:05 +00:00
Doug Goldstein
7b2fdd9aaa
chore: fix spelling mistakes
Newer version of codespell finds these.

Change-Id: I1f5e29ce8018d9764394de7dc3c833831d86dfec
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025-11-23 14:06:25 -06:00
Doug Goldstein
8dcb9e23cb
fix: sphinx-lint unbalanced backticks
Change-Id: I7374e7bcd1471a700008efbe84b3817d9bf68746
Signed-off-by: Doug Goldstein <cardoe@cardoe.com>
2025-11-23 14:06:11 -06:00
Zuul
ec455d6832 Merge "Fix cleaning example in docs that sets the BMC clock to use correct arg" 2025-11-22 17:22:39 +00:00
Takashi Kajinami
4e5ff9bf02 Drop reference to TripleO
... because the project was retired some time ago.

Change-Id: I41d7656f6c87a340afedcdbf67c582d68a08744d
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
2025-11-22 18:49:35 +09:00
Takashi Kajinami
32dd5ec596 Remove inspector inspect interface
Deprecation of ironic-inspector was announced long ago (during 2023.2
cycle) and ironic-inspector was retired this cycle. So it's time to
drop the all remaining code to force migration to the built-in
agent interface.

Change-Id: I14a87599f9f47b167f8f1a84704982301d033381
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
2025-11-22 18:48:47 +09:00
Zuul
82ee55e280 Merge "Update devstack guides to raise RAM requirement" 2025-11-22 09:35:38 +00:00
Zuul
23a63c5424 Merge "Add a script to copy inspection data between Swift buckets" 2025-11-21 18:11:27 +00:00
Zuul
e75c8a4483 Merge "Nit: Fix typo in Migrating from ironic-inspector" 2025-11-19 09:38:03 +00:00
Zuul
77343549fe Merge "Follow-up: Document noop deploy interface" 2025-11-19 09:37:58 +00:00
Zuul
1a031b03a7 Merge "Add node.instance_name" 2025-11-18 23:27:20 +00:00
Afonne-CID
451392c602 Follow-up: Document noop deploy interface
Change-Id: I0a8bf842bfabf3740fb858462b946cbe8d4e278a
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
2025-11-18 18:21:53 +01:00
Zuul
bcfd5e6358 Merge "docs: Fix typos and a wrong URL" 2025-11-18 17:21:25 +00:00
Zuul
1861760caa Merge "Add a noop deploy interface" 2025-11-18 17:21:20 +00:00
Pierre Riteau
aaa7cea4ca docs: Fix typos and a wrong URL
Change-Id: I497577fc4371eb66db023ff1c4fab39564398855
Signed-off-by: Pierre Riteau <pierre@stackhpc.com>
2025-11-18 15:02:03 +01:00
Zuul
d1ad78f827 Merge "Add Release Schedule to release how to" 2025-11-17 19:27:38 +00:00
Jay Faulkner
e4b1e394d4 Update devstack guides to raise RAM requirement
Our most basic images require 2500mb of ram, minimum, for fake nodes.

Signed-off-by: Jay Faulkner <jay@jvf.cc>
Change-Id: I0939f6fbb8dfd91c4e3f20b3a785e6acc9feb9bb
2025-11-13 10:03:27 -08:00
Jakub Jelinek
81209ba399 Add a script to copy inspection data between Swift buckets
There is no way to migrate inspection data automatically.
This script documents one of the ways how to copy data
between two Swift buckets.

Change-Id: I4a86faab5e7abef17064e3c716dc17b6a2f21f39
Signed-off-by: Jakub Jelinek <jakub.jelinek@cern.ch>
Assisted-by: Claude 4.5 Sonnet (Anthropic AI)
2025-11-12 17:12:39 +00:00
Jakub Jelinek
3eca781ec3 Nit: Fix typo in Migrating from ironic-inspector
Change-Id: I49351a35971d3970faaea62b36d49e4ee883db1f
Signed-off-by: Jakub Jelinek <jakub.jelinek@cern.ch>
2025-11-12 16:49:25 +00:00
Jacob Anders
7d050f6ae2 Deprecate iRMC hardware type and interfaces
The iRMC hardware type for Fujitsu PRIMERGY servers has been
unmaintained for an extended period.

This change marks the iRMC hardware type and all associated
interfaces (bios, boot, inspect, management, power, raid, and
vendor) as unsupported. All configuration options in the [irmc]
section have been marked as deprecated for removal. The
documentation has been updated with a prominent warning about
the deprecation.

Users of the iRMC hardware type should begin planning migration to
alternative hardware types. The driver and all associated code will
be removed in a future Ironic release.

Change-Id: I78b822e5fe3bd1ce4d7ea410c4569d6b830dc214
Signed-off-by: Jacob Anders <janders@redhat.com>
Assisted-by: Claude 4.5 Sonnet (Anthropic AI)
2025-11-13 02:12:29 +10:00
Jay Faulkner
bc463ebcbb Add node.instance_name
This adds node.instance_name as a top level field

Additionally, to provide forwards-compatability for nova clients,
we will automatically set node.instance_name if
node.instance_info.display_name is being set.

Tested the following in devstack, using manual CURL api calls:

 - Viewing an instance_name via GET /v1/nodes/node-name
 - Adding an instance_name
 - Clearing instance name on undeploy
 - Setting an instance_name via PATCH /v1/nodes/node-name
 - Setting a instance_info/display_name and validating it sets instance_name
 - Setting a instance_info/display_name when instance_name already exists and
   validating it DOES NOT OVERRIDE existing instance_name
 - node.instance_name not returned for API version < our micro version
 - querying /v1/nodes with ?instance_name=somename
 - (cid) Sort of fully tested integrated with nova by observing CI logs
 - (jayf) Added missing comments around API versions, and added a reminder
   comment

Generated-By: Claude code
Change-Id: Ic24b2e8dbe88c59f0df52a0f5581d48492ba8cd7
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
Signed-off-by: Jay Faulkner <jay@jvf.cc>
2025-11-12 13:34:51 +01:00
Afonne-CID
bcae66f199 Add a noop deploy interface
This change adds a NoDeploy class to allow for a truly minimal
deployment interface with no-op implementations for all required
methods.

Closes-Bug: #2106550
Change-Id: Ic6faf34860efef9165ad868d57972cd5007eacd4
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
2025-11-11 21:07:28 +01:00
Julia Kreger
a4a5c9b3b7 docs: a little more clarity around the state of ipxe+uefi
We likely need to begin to strip out the undionly.kpxe stuffs as well,
but first lets see what people think with this and we can go in that
direction.

Change-Id: I09f15e87372390219193c93ba3b5d309f29df900
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
2025-11-11 10:00:08 -07:00
Zuul
e3b943a34b Merge "Apply naming standards to Ironic install guide sections" 2025-11-06 16:13:36 +00:00
Zuul
6507e9fae5 Merge "Add a new 'category' field to the Portgroup object" 2025-11-05 04:20:31 +00:00
Clif Houck
7a67d4f183 Add a new 'category' field to the Portgroup object
Adds a new category field to the portgroup object. Foundational
work for first milestone of trait based port scheduling.

Depends-On: https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/955799
Change-Id: I5100144a330602996c27ed18d2bbde09be6e9571
Signed-off-by: Clif Houck <me@clifhouck.com>
2025-11-04 12:44:01 -08:00
Julia Kreger
d59ad9f82d docs: cover what happens if someone changes iscsi passwords
Change-Id: I472175d4629191d4506d200ec60090e678e4a25e
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
2025-11-03 13:40:21 -08:00
Zuul
6b84d88a5d Merge "docs: add a "i want a pony" bit of text" 2025-11-03 19:49:05 +00:00
Zuul
cf8b0279cc Merge "docs: provide a little more clarity/guidance w/r/t redfish" 2025-11-03 19:39:17 +00:00
Zuul
822c8d5148 Merge "Remove sushy-oem-idrac from driver requirements" 2025-11-03 13:11:44 +00:00