Skip to content

Add a command to validate Redfish nodes against the OpenStackIronicProfile #2594

Description

@berendt

Category: feature | Scope: Medium

Description

Add a CLI command that validates a single bare-metal node against the DMTF
interoperability profile OpenStackIronicProfile, the profile Ironic ships
to describe the Redfish resources and attributes its redfish drivers
expect. The node is addressed by its hostname; the Redfish endpoint and
credentials are resolved from the node's record in Netbox, the same way the
existing Redfish inventory command resolves them.

The command performs read-only checks only: it reads the resources and
attributes the profile names and never changes the state of the machine.
Power actions, virtual media operations, and boot overrides stay untouched,
so the command is safe to run against any node at any time, including nodes
already in production.

The result is a per-requirement verdict: for each requirement in the profile
the command reports whether the node fulfills it or not, plus an overall
pass/fail summary. The result is printed only; nothing is written back to
Netbox or any other system.

Validation against the wider OSISM Redfish requirements appendix (virtual
media with plain-HTTP images, UEFI settings, session limits, functional
acceptance tests) is out of scope; the command covers exactly the
OpenStackIronicProfile.

Motivation

Nodes that do not provide the Redfish surface Ironic expects fail late
today: the incompatibility shows up during enrollment, inspection, or first
deploy, where the error messages point at symptoms rather than at the
missing Redfish capability. Operators onboarding new hardware have no way to
check a node up front.

With this command an operator can validate a node right after it has been
recorded in Netbox with its Redfish access, before it is enrolled in Ironic.
Firmware that lacks a required resource or attribute is caught while the
node is still being onboarded, when a firmware update or an escalation to
the vendor is still cheap. The requirements appendix added in
osism/osism.github.io#1064 gives hardware vendors the written contract; this
command gives operators the check for the profile-backed part of it.


Drafted by planwerk-agent with Claude:claude-fable-5

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status
    New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions