Change- heading was outdated and confusing. This patch updates
the title to accurately reflect the content of the installation guide.
This resolves: bug/2072349
Change-Id: Ibfdbbc40ad2ae1cda46de1d1937c15e5926d4308
Signed-off-by: Abhijith P C <abhijithpc25@gmail.com>
The sushy-oem-idrac code has been integrated in sushy version
5.6.0 so we don't need the sushy-oem-idrac package anymore.
Change-Id: Ief49300f6ac0c49686b9469be98b8680e018a618
Signed-off-by: Riccardo Pittau <elfosardo@gmail.com>
Add openstack release schedule with reference to ironic
projects and when to release them during the release
cycle.
Also remove all old references to unmaintained projects and
move all links to the bottom of the document as best practice.
Assisted-By: Claude Sonnet 4
Change-Id: Ie01bb22e6391ea22c8983ebc7bf5b90c688f8afd
Signed-off-by: Riccardo Pittau <elfosardo@gmail.com>
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>
As discussed during the PTG, minimally we need update some of the
text on the framing of Redfish to help users understand what might
be happening or why it might not work.
Change-Id: I3aae292158e9c8fb6b67524b809310130b18e452
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>
Include a generic vendor variable for triggering
``requires_full_boot_request`` during boot. This is required because
some vendors, i.e. Lenovo, offer hardware with a variety of BMCs, some
of which require a full boot request.
Therefore, there is a need for a general vendor property variable for
these cases where it is not possible to add a vendor in order to avoid
duplicate entries.
Change-Id: Ic1745ff8eb6744d5a21ca8e0d5580bdb7e466e83
Signed-off-by: Massimiliano Favaro-Bedford <max@stackhpc.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>
This change introduces a new configuration option 'force_inspection_dhcp'
in the inspector group that enables DHCP on all available network
interfaces during managed inspection. When enabled, it:
- Skips injection of static network configuration into virtual media ISO
- Forces the inspection ramdisk to use DHCP on all interfaces
- Automatically enables LLDP collection across all interfaces
- Helps ensure comprehensive network discovery during inspection
This is helpful in scenarios where the inspection network is separate
from the provisioning network. Since the static network configuration
data is typically intended for the provisioning network it may not be
applicable/valid on the inspection network.
Related-Bug: 2113769
Change-Id: I200730069d4177e8c2960e5f3ce8b1bbcca0f062
Assisted-by: Claude Code/claude-sonnet-4
Signed-off-by: Allain Legacy <alegacy@redhat.com>
This change refactors the JSON-RPC client and server implementation to
support multiple configuration groups, enabling different JSON-RPC
services to use separate configuration sections within the same file.
Key changes:
- Modified Client and WSGIService to accept conf_group parameter
- Updated session management to cache sessions per configuration group
- Made configuration option registration reusable for different groups
- Added comprehensive test coverage for multi-group functionality
This enables services like ironic-networking (future) to use their own
JSON-RPC configuration section while sharing the same underlying
implementation.
Related-Bug: 2113769
Change-Id: I8ce46331878f852c9c6a3e6fc9c08c3b9d789fad
Assisted-by: Claude Code/claude-sonnet-4
Signed-off-by: Allain Legacy <alegacy@redhat.com>
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>
Console containers are run as systemctl --user units with the stack
user. Unlike in the locally running case, in a job there may be no
active user session running to allow these units to run. This change
ensures there is a stack user service running, and "loginctl
enable-linger" will start one again at boot time. These actions are only
taken when ir-novnc is enabled.
This change also installs the package slirp4netns for the required
user-mode networking, and adds fake-graphical to the list of enabled
console interfaces when ir-novnc is enabled. enabled_console_interfaces
is passed to tempest.conf so that tempest can run tests or not based on
whether fake-graphical is enabled.
Additionally the console container will bind to a high port on localhost
instead of a high port on the host IP. This still allows
ironic-novncproxy to connect to the vnc endpoint while avoiding iptables
rules.
Change-Id: Ibcd5b7b05c466d898ba69bff35a1e767be3699a3
Signed-off-by: Steve Baker <sbaker@redhat.com>
Making the fake-graphical driver available for all hardware types is
proposed for the following scenarios:
- functional testing with fake-hardware
- integration testing with ipmi or redfish hardware types, but when the
target server is virtual and does not emulate BMC remote console
- cloud operators who want to verify working ironic-novncproxy with
existing real nodes
Change-Id: I9ea46d76ff80bf27571144f1f671acdb06a0fcf0
Signed-off-by: Steve Baker <sbaker@redhat.com>
This logic is broken in a few places when dealing with real world
redirect cases, such as Debian Cloud images redirecting to mirrors.
It seems that the code was written with an incorrect assumption that
requests does not limit redirects by default. It does, the default
max_redirects seems to be 30. We can change it on Session if we need.
The anaconda case is now handled by checking the url field of the
response.
Closes-Bug: #2127154
Change-Id: I200d631e166075ceab80dcd4b0ff596d1860aa3b
Signed-off-by: Dmitry Tantsur <dtantsur@protonmail.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
Removing the snmp CI job, as it doesn't make sense to execute as we're
going to remove it.
Change-Id: I3da676da959fde5d4c858538888ccd7b0682cb3b
Signed-off-by: Julia Kreger <juliaashleykreger@gmail.com>