A service for managing and provisioning Bare Metal servers.
Go to file
Richard Pioso 9889ab2c1a DRAC get_bios_config() passthru causes exception
The DRAC driver's (pxe_drac) get_bios_config() vendor passthru method
raises an AttributeError exception. It no longer returns the current
BIOS configuration. This is a regression from stable/mitaka.

Triage found that get_bios_config() mistakenly treats the value returned
by python-dracclient's list_bios_settings() as containing named tuples.
When it calls the namedtuple _asdict() method, an AttributeError
exception is raised.

Revert get_bios_config()'s handling of the return value to use __dict__.
Remove the comment that is not consistent with the implementation.

Also revert the unit test case for a successful call to use mock to
create the return value. Use mock.NonCallableMock with an empty
specification (spec) to catch this type of bug in the future.

Change-Id: I94afaa72a1ef25efc1b622e29e3a92a5d27f1892
Closes-Bug: #1637671
(cherry picked from commit 6d6cf18f31)
2016-11-02 11:07:09 +00:00
api-ref [api-ref] Remove temporary block in conf.py 2016-09-07 08:24:39 +00:00
devstack Merge "Change the logic of selecting image for tests" into stable/newton 2016-09-30 16:09:15 +00:00
doc/source Point documentation links to newton equivalents 2016-09-28 16:35:38 -04:00
etc Sync ironic-lib.filters from ironic-lib 2016-09-21 15:21:05 +02:00
install-guide/source Keep numbering of list in Install Guide 2016-10-06 09:37:31 +09:00
ironic DRAC get_bios_config() passthru causes exception 2016-11-02 11:07:09 +00:00
ironic_tempest_plugin Merge "Fix docstrings in Tempest Plugin REST client for Ironic API" 2016-09-19 17:25:21 +00:00
releasenotes DRAC get_bios_config() passthru causes exception 2016-11-02 11:07:09 +00:00
tools Metric chassis, driver, node, and port API calls 2016-07-15 18:15:11 +00:00
.gitignore Add reno for release notes management 2015-11-13 03:22:32 -08:00
.gitreview Update .gitreview for stable/newton 2016-09-22 08:37:50 -04:00
.mailmap Update mailmap for Joe Gordon 2013-10-28 10:19:15 +00:00
.testr.conf Prepare for functional testing 2015-09-28 21:27:01 +00:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 16:55:23 +01:00
LICENSE Added project infrastructure needs. 2013-05-02 14:55:43 -04:00
README.rst Documentation update 2016-08-23 12:49:04 -07:00
RELEASE-NOTES Add release notes for 4.0.0 2015-08-31 21:43:58 +00:00
Vagrantfile Change vagrant.yml to vagrant.yaml 2015-08-07 09:51:32 +00:00
babel.cfg Run extract_messages 2013-07-22 09:51:10 +02:00
driver-requirements.txt Update proliantutils version required for Newton release 2016-09-15 06:55:26 +00:00
requirements.txt Remove websockify from requirements 2016-09-20 17:08:11 -07:00
setup.cfg DRAC OOB inspection 2016-09-02 12:08:38 +02:00
setup.py Updated from global requirements 2015-09-22 03:33:28 +00:00
test-requirements.txt Add a basic install guide 2016-09-07 08:40:48 -04:00
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/newton 2016-09-22 08:37:57 -04:00
vagrant.yaml Added CORS support middleware to Ironic 2015-09-01 19:45:01 +00:00

README.rst

Ironic

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 on Launchpad: http://launchpad.net/ironic

For information on how to contribute to ironic, see http://docs.openstack.org/developer/ironic/dev/code-contribution-guide.html