Adds an upgrade check that warns operators if they have nodes using
the ilo or ilo5 hardware types or any ilo-specific interfaces
(ilo-pxe, ilo-ipxe, ilo-virtual-media, ilo-uefi-https, etc.).
Change-Id: I1e90cbb08d5268e54132e4c3dba510d211e11007
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
Its complicated, but basically because we run full size VMs which
take a while to boot, the multinode tests need a bit more than 600
seconds to deploy a node. They can get there in just about that time
and even sometimes beat the time window, but sometimes the job
times out internally and kills the test run.
This changes the time to be 2000 seconds, which is more consistent
across other jobs. Independently, the defaults in the tempest plugin
will need to be made sane.
Change-Id: I890d551122489e5a0b3162f08dbc10270968fb00
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
Use extended timeout (by default 300 seconds) for BMC firmware
updates to handle BMC transitional states during firmware update process,
unless a different timeout is specified by the operator.
Assisted-By: Claude Code Sonnet 4
Change-Id: I2125ff4cdcbd07a89b364968dda4bb60e059121c
Signed-off-by: Jacob Anders <janders@redhat.com>
The fix for UEFI boot on ubuntu noble in metal3-dev-env [1]
has merged, we should be able to run it now with no
changes.
[1] https://github.com/metal3-io/metal3-dev-env/pull/1497
Change-Id: I5563d79540ce0ab1e299161a1fc9f484ba7cdf7f
Signed-off-by: Riccardo Pittau <elfosardo@gmail.com>
A recent image update has caused CI to begin failing against anaconda. This change is required to unblock it, and must be backported to unblock ironic-tempest-plugin merges.
Change-Id: I6a8a7baf54f7c0718b897f490671e8c3ac946e45
Signed-off-by: Jay Faulkner <jay@jvf.cc>
Add API documentation noting that instance_uuid does not follow
RFC 6902 behavior in that the "add" operator cannot replace existing
values, preventing race conditions between Nova compute agents.
Closes-Bug: #1310843
Change-Id: I1caaf5b6133d756cf9484d3e5b56f7b8280525db
Signed-off-by: Afonne-CID <afonnepaulc@gmail.com>
Adds a new physical_network field to the portgroup object.
Adds logic to forbid changing Port.physical_network when said Port is
already part of a Portgroup. Adds logic to Portgroup to cascade
Portgroup.physical_network changes/updates to member Ports of the
Portgroup.
Adds RPC call to update physical_network on Portgroup.
Foundational work for first milestone of trait based port scheduling.
Depends-On: https://review.opendev.org/c/openstack/ironic-tempest-plugin/+/955799
Change-Id: I5a9d9c19182b232bc1b8446644cab0bf6d68d139
Signed-off-by: Clif Houck <me@clifhouck.com>
They are permafailing, the Neutron fix is not ready yet.
Change-Id: Ie5d9f76c97fb08edcd295fdfa82bd0b4539ff410
Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com>
When an `external_callback_url` is configured, we were overriding
only the base IPA API URL and not the inspection callback.
Closes-Bug: #2101173
Change-Id: I5a84907e65ec1282805fa04f0dff75a848e1b09c
Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com>
Prior to this change, as reported in bug 2126991, a generated vmedia ISO
would not be created properly using information in the
[conductor]/*_kernel_by_arch and [conductor]/*_ramdisk_by_arch.
This change restores the documented behavior of checking driver_info
first, then checking *_by_arch, then checking the global default.
Assisted-by: Claude Code 2.0
Closes-Bug: #2126991
Signed-Off-By: Jay Faulkner <jay@jvf.cc>
Change-Id: I63197791b4b54072310dfd8525b40044e514ff7f
Despite what the api-ref says [1], the 'bios.[*].value' field included
in responses to 'GET /v1/nodes/{node_ident}/bios' can be null. The
BIOSSetting database model in 'ironic.db.sqlalchemy.models' confirms as
much. Update the schema and api-ref to reflect this. This leaves only
the 'name' and 'created_at' fields as non-nullable.
Change-Id: Idcc03e6ce377ecf6b9db511e3283fb6f2496b037
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Closes-bug: #2127079
The 'SchemaValidator.validate' method (from
'ironic.api.validation.validators') already catches the
'jsonschema.ValidationError' exception and raises Ironic's own
'InvalidParameterValue' exception in its place. Thus, we need to catch
the latter, not the former.
Change-Id: Ic8668afe5a2ff85a5c089c7adae9c8af541f7e84
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Partial-bug: #2127079
There have been reports of firmware upgrades failing on Gen11 iLO
machines with GET NetworkAdepters returning 400s responses. This change
attempts to resolve this by catching the exception relevant to the fault
Change-Id: I62095c2b61d14688d2dcbcdcfd29e9391af2c0ba
Signed-off-by: Jacob Anders <janders@redhat.com>
Resolves a bug where firmware updates fail intermittently on some
hardware models due to invalid or unstable BMC responses immediately
after firmware update completion. The BMC may return inconsistent
responses for a period after firmware updates, causing the update
process to fail prematurely.
This change adds comprehensive BMC state validation that requires
multiple consecutive successful responses from System, Manager, and
NetworkAdapters resources before considering the firmware update
complete. This ensures the BMC has fully stabilized before proceeding.
Generated-By: Claude Code Sonnet 4
Change-Id: I5cb72f62d3fc62c3ad750c62924842cef59e79b8
Signed-off-by: Jacob Anders <janders@redhat.com>
Added multiple redirection response for HttpImageService.validate_href()
function inside ironic/common/image_service.py:
- 301: MOVED_PERMANENTLY
- 302: FOUND
- 307: TEMPORARY_REDIRECT
- 308: PERMANENT_REDIRECT
For all the response, the HTTP server should generate a Location header field
containing a URI as new reference.
Closes-Bug: #2126069
Change-Id: I985b3587984ba78570c3a163c08af58cf8a5d0c1
Signed-off-by: Ettore Simone <ettore.simone@gmail.com>
The default values defined in code are automatically picked up by
oslo-config-generator and added to the config file generated by
the tool.
Change-Id: I4a8db8905baea9d10b49e24a85bb506102cc00ee
Signed-off-by: Takashi Kajinami <kajinamit@oss.nttdata.com>
We've just discovered that this field does not do much. It basically
only affects the create_root_volume/create_nonroot_volumes arguments.
No RAID interfaces use it to populate root device hints.
Change-Id: I2ed780e13c59713127bd7f4ca30269e0c0865440
Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.com>
Fixes the redfish-virtual-media boot interface logic to provide more
clarity to a user when an error occurs as Dell iDRAC10s do not work
with the present virtual media code, and users should instead use
the idrac interface variant.
Change-Id: I96642a5e9b65eb08c3c42da3e35f376d5e264fbc
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>