Bm sno idrac10 and extra agent config support#4008
Conversation
The InsertMedia and EjectMedia action URLs were hardcoded as VirtualMedia/CD, which is only valid on older iDRAC firmware. Newer firmware versions expose the virtual optical drive under a different member name (e.g. RemovableDisk, 1, 2), causing a 404 ResourceNotFound error on the InsertMedia call. Add bm_discover_vmedia_member.yml that GETs the VirtualMedia collection, selects the first member whose MediaTypes includes CD or DVD (fallback: first member with an InsertMedia action), and exposes _vmedia_member_uri, _vmedia_insert_action, and _vmedia_eject_action for use by other tasks. Update main.yml to run discovery before the eject+insert sequence and use the discovered action URLs. Update bm_eject_vmedia.yml to trigger lazy discovery when the action variable is not already set. Delete stale iDRAC sessions as well. Fix bm_discover_vmedia_target.yml to verify the inserted ISO against the discovered member URI rather than the hardcoded VirtualMedia/CD path. Add cifmw_bm_agent_iso_server_ip to override the IP the iDRAC uses to fetch the agent ISO. Auto-detection picks the default-route address, which is unreachable by iDRAC when the controller runs over VPN. Generated-By: cursor-agent (claude-4.6-sonnet-medium) Signed-off-by: Bohdan Dobrelia <bdobreli@redhat.com>
|
Skipping CI for Draft Pull Request. |
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
When the iDRAC cannot fetch the agent ISO over HTTP (network routing, firewall), the only viable path is to upload the ISO through the iDRAC web UI as a local file. The role previously had no way to skip ISO generation and VirtualMedia insertion on a second run Introduce cifmw_bm_agent_reuse_vmedia (default: false). When true, the role skips: stale-state cleanup, ISO generation, live- debug ISO patching, podman HTTP server start/stop, VirtualMedia eject before insert, ISO insertion, and VirtualMedia eject after install. All remaining steps run unchanged: USB boot check, power- off, SSH key and config generation, openshift-install acquisition, LVMS MachineConfig generation, UEFI boot-override discovery, power-on, and install wait. The intended two-run workflow (which rather works the best for wrappers using the bm_sno role instead of CI jobs): - Run 1 (reuse_vmedia=false) generates the ISO and auth artifacts; - the operator uploads the ISO via the iDRAC UI and confirms it is Connected; - run 2 (reuse_vmedia=true) powers the host off, sets the one-time UEFI boot override, powers it back on, and waits for install-complete Assisted-By: claude-4.6-sonnet-medium Signed-off-by: Bohdan Dobrelia <bdobreli@redhat.com>
Use the standard bm_discover_vmedia_target path for iDRAC9. Add a specific bm_discover_vmedia_target path for iDRAC10. Signed-off-by: Bohdan Dobrelia <bdobreli@redhat.com>
|
Build failed (check pipeline). Post ✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 38m 01s |
Support tagged interface config for agent Support additional NTP servers Signed-off-by: Bohdan Dobrelia <bdobreli@redhat.com>
Signed-off-by: Bohdan Dobrelia <bdobreli@redhat.com>
|
Build failed (check pipeline). Post ✔️ openstack-k8s-operators-content-provider SUCCESS in 2h 21m 29s |
BM SNO: partial support iDRAC10
BM SNO: add more config options for agent