A service for managing and provisioning Bare Metal servers.
Find a file
Steve Baker 28ef6c9a5e Memoize calls to bcrypt.checkpw
This intentionally high CPU overhead function is called for every API
and JSON-RPC request when Basic HTTP authentication is enabled. With the
recent indirection enablement this is causing a performance regression
for Metal3 due to the extra JSON-RPC calls. This change would improve
the performance of all branches of Metal3 if backported.

Change-Id: I2740035d2882aacddca9c541362d6e533140650f
Closes-Bug: #2121105
Signed-off-by: Steve Baker <sbaker@redhat.com>
(cherry picked from commit 2a62718887)
2025-09-02 17:00:55 +00:00
api-ref Allow setting of disable_power_off via API 2024-11-28 12:06:23 +00:00
devstack Trivial: Clean up residual .vbmc dir after clean 2025-02-03 08:09:18 +01:00
doc OSSA-2025-001: Disallow unsafe image file:// paths 2025-05-08 07:28:18 -07:00
etc Drop rootwrap support 2024-01-08 18:02:27 +01:00
ironic Memoize calls to bcrypt.checkpw 2025-09-02 17:00:55 +00:00
playbooks Add lsblk output to metal3 logs 2025-01-23 16:39:43 +01:00
redfish-interop-profiles Update the redfish interoperability profile 2024-06-27 16:24:24 +02:00
releasenotes Memoize calls to bcrypt.checkpw 2025-09-02 17:00:55 +00:00
tools Migrate ironic_lib to ironic 2025-01-09 13:52:30 -08:00
zuul.d Configure ironic bugfix 28 2025-02-10 12:10:28 +01:00
.coveragerc Use .coveragerc file 2024-02-02 23:17:12 +09:00
.gitignore Render the redfish interop profile in the docs 2024-06-27 16:32:28 +02:00
.gitreview Update .gitreview for bugfix/28.0 2025-02-06 12:53:54 +00:00
.mailmap Add my new address to .mailmap 2020-04-13 07:29:37 -07:00
.pre-commit-config.yaml enable ruff in pre-commit with some initial lints 2024-12-16 09:07:39 -06:00
.stestr.conf Migrate to stestr as unit tests runner 2017-09-22 08:56:34 +00:00
bindep.txt Merge "Add support for Ubuntu 24.04" 2024-11-18 15:20:37 +00:00
CONTRIBUTING.rst Project Contributing updates for Goal 2020-02-20 02:01:21 +00:00
driver-requirements.txt Remove deprecated idrac wsman driver interfaces 2024-06-24 15:03:28 -07:00
LICENSE Added project infrastructure needs. 2013-05-02 14:55:43 -04:00
pyproject.toml enable ruff in pre-commit with some initial lints 2024-12-16 09:07:39 -06:00
README.rst Guide users/developers to launchpad 2024-03-13 19:34:50 +09:00
requirements.txt Merge "Migrate ironic_lib to ironic" 2025-01-14 17:34:01 +00:00
setup.cfg Remove trailing whitespace 2024-10-29 14:55:44 -07:00
setup.py add pyproject.toml to support pip 23.1 2024-11-05 08:00:24 -06:00
test-requirements.txt Remove postgresql testing and documentation 2024-11-12 14:41:04 -08:00
tox.ini Configure ironic bugfix 28 2025-02-10 12:10:28 +01:00
upper-constraints.txt Configure ironic bugfix 28 2025-02-10 12:10:28 +01:00

======
Ironic
======

Team and repository tags
------------------------

.. image:: https://governance.openstack.org/tc/badges/ironic.svg
    :target: https://governance.openstack.org/tc/reference/tags/index.html

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
~~~~~~~~~~~~~~~~~

* Documentation: https://docs.openstack.org/ironic/latest
* Source: https://opendev.org/openstack/ironic
* Bugs: https://bugs.launchpad.net/ironic/+bugs
* Wiki: https://wiki.openstack.org/wiki/Ironic
* APIs: https://docs.openstack.org/api-ref/baremetal/index.html
* Release Notes: https://docs.openstack.org/releasenotes/ironic/
* Design Specifications: https://specs.openstack.org/openstack/ironic-specs/

Project status, bugs, and requests for feature enhancements (RFEs) are tracked
in Launchpad:
https://launchpad.net/ironic

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