A service for managing and provisioning Bare Metal servers.
Go to file
Julia Kreger 41355d5a28 IPMI: Handle vendor set boot device differences
Supermicro machines, when in UEFI mode, have a different
device number, in binary, to represent the hard disk from
other vendors such as Fujitsu which actually has somewhat
similar code in their driver.

This means we need to be somewhat cognizent of the vendor of
the BMC and possibly update the device mapping based upon that
vendor.

This may ultimately fix a number of IPMI related problems, because
there is a reliance upon the text output of ipmitool, which only
reads the bytes retured by the BMC, which may not be reality after
the next reset, espescialy if ipmitool doesn't know of the UEFI
operating difference.

NOTE: This had to be a direct cherry-pick from the original change
as the intermediate branch that we normally would have cherry-picked
from has had other changes made to it, which resulted in an unclean
backport, where as with the original change it was clean. This was
then backported from stable/ussuri to stable/train, where
test_ipmitool.py conflicted slightly due to later eventlet changes.

Change-Id: Ie19db9e0cf1eafdfc9bb46248f4d457337821f94
Story: 2008241
Task: 41085
(cherry picked from commit a7ac9ce8cd)
(cherry picked from commit 8bf3f47476)
2021-04-15 10:31:39 +12:00
api-ref Merge "Add api-ref for allocation update" 2019-06-07 14:11:35 +00:00
devstack add tempest boot_mode config 2020-07-11 00:26:55 +02:00
doc IPMI: Handle vendor set boot device differences 2021-04-15 10:31:39 +12:00
etc Remove sample policy and config files 2018-02-02 11:21:29 +00:00
ironic IPMI: Handle vendor set boot device differences 2021-04-15 10:31:39 +12:00
playbooks CI: Patch to fix CI jobs in bugfix/stable branches 2020-09-23 07:31:22 -07:00
releasenotes IPMI: Handle vendor set boot device differences 2021-04-15 10:31:39 +12:00
tools Stop using md5 for __repr__ of objects 2020-07-09 16:04:28 +00:00
zuul.d Merge "CI: switch the multinode job to tempest-multinode-full-base" into stable/train 2021-02-13 06:01:08 +00:00
.gitignore Migrate to stestr as unit tests runner 2017-09-22 08:56:34 +00:00
.gitreview Update .gitreview for stable/train 2019-09-25 08:43:29 +00:00
.mailmap Update mailmap for Joe Gordon 2013-10-28 10:19:15 +00:00
.stestr.conf Migrate to stestr as unit tests runner 2017-09-22 08:56:34 +00:00
CONTRIBUTING.rst Update Launchpad references to Storyboard 2018-04-09 12:37:14 -07:00
LICENSE Added project infrastructure needs. 2013-05-02 14:55:43 -04:00
README.rst Add ironic-specs link to readme.rst 2019-08-30 17:16:09 +08:00
babel.cfg Run extract_messages 2013-07-22 09:51:10 +02:00
bindep.txt Add a pxe/uefi/grub2 CI job 2019-06-05 14:21:13 -07:00
driver-requirements.txt opt: Enhance old stable branches to use latest python-ibmcclient 2020-10-22 02:09:38 +00:00
lower-constraints.txt Build pdf doc 2019-09-06 14:50:02 +08:00
reno.yaml tell reno to ignore the kilo branch 2020-02-10 10:36:13 +00:00
requirements.txt Merge "Support power state change callbacks to nova using ksa_adapter" 2019-08-24 02:20:13 +00:00
setup.cfg Add Redfish inspect interface to idrac HW type 2019-09-17 15:34:54 -04:00
setup.py Updated from global requirements 2017-03-02 11:45:27 +00:00
test-requirements.txt [stable-only] Fix bandit upper constraint 2021-01-08 19:15:49 +01:00
tox.ini Update TOX/UPPER_CONSTRAINTS_FILE for stable/train 2019-09-25 08:43:32 +00:00

README.rst

Ironic

Team and repository tags

image

Overview

Ironic consists of an API and plug-ins for managing and provisioning physical machines in a security-aware and fault-tolerant manner. It can be used with nova as a hypervisor driver, or standalone service using bifrost. By default, it will use PXE and IPMI to interact with bare metal machines. Ironic also supports vendor-specific plug-ins which may implement additional functionality.

Ironic is distributed under the terms of the Apache License, Version 2.0. The full terms and conditions of this license are detailed in the LICENSE file.

Project resources

Project status, bugs, and requests for feature enhancements (RFEs) are tracked in StoryBoard: https://storyboard.openstack.org/#!/project/943

For information on how to contribute to ironic, see https://docs.openstack.org/ironic/latest/contributor