A service for managing and provisioning Bare Metal servers.
Go to file
Steve Baker 393b20204b Add configurable delays to the fake drivers
Simulating workloads with the fake driver currently misses the reality
that some operations take time to complete, rather than occuring
instantly. This makes it difficult to mock real workloads for
performance and functional testing of ironic itself.

This change adds configurable random wait times for fake drivers in a
new ironic.conf [fake] section. Each supported driver having one
configuration option controlling the delay. These delays are applied
to operations which typically block in other drivers.

The default value of zero continues the existing behaviour of no
delay. A single integer value will result in a constant delay in
seconds. Two values separated by a comma will result in a triangular
distribution weighted by the first value, specifically in python[1]:

    random.triangular(a, b, a)

Change-Id: I7cb1b50d035939e6c4538b3373002a309bfedea4
[1] https://docs.python.org/3/library/random.html#random.triangular
2022-10-13 15:01:18 +13:00
api-ref Allocation candidates prefer matching name 2022-06-16 15:31:10 +12:00
devstack CI: Changes to support Anaconda CI jobs 2022-09-06 07:38:11 -07:00
doc Set stage for Zed Release with 21.1 2022-09-21 23:59:27 -03:00
etc Bye-bye iSCSI deploy, you served us well 2021-05-04 14:28:25 +02:00
ironic Add configurable delays to the fake drivers 2022-10-13 15:01:18 +13:00
playbooks/ci-workarounds CI: Save routing table information for troubleshooting 2022-07-20 11:02:39 -07:00
releasenotes Add configurable delays to the fake drivers 2022-10-13 15:01:18 +13:00
tools Add audit middleware options to ironic.conf 2022-07-07 15:51:07 +00:00
zuul.d CI: Changes to support Anaconda CI jobs 2022-09-06 07:38:11 -07:00
.gitignore Migrate to stestr as unit tests runner 2017-09-22 08:56:34 +00:00
.gitreview OpenDev Migration Patch 2019-04-19 19:40:53 +00:00
.mailmap Add my new address to .mailmap 2020-04-13 07:29:37 -07:00
.stestr.conf Migrate to stestr as unit tests runner 2017-09-22 08:56:34 +00:00
bindep.txt Drop python2 from bindep.txt 2022-06-10 20:42:46 +03:00
CONTRIBUTING.rst Project Contributing updates for Goal 2020-02-20 02:01:21 +00:00
driver-requirements.txt Fix idrac-redfish RAID controller mode conversion 2022-09-15 03:36:31 -04: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
reno.yaml tell reno to ignore the kilo branch 2020-02-07 16:42:15 -05:00
requirements.txt Zed Ironic requires Sushy >4 2022-09-12 16:09:00 -07:00
setup.cfg Implement a DHCP driver backed by dnsmasq 2022-09-05 13:57:39 +12:00
setup.py Cleanup Python 2.7 support 2020-04-03 17:49:23 +02:00
test-requirements.txt Update requirements 2021-07-13 14:37:28 +02:00
tox.ini tests: Add a WarningsFixture 2022-09-08 10:58:42 +01:00

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