This change switches the conductor to using Futurist library executor and
periodic tasks worker instead of oslo.service periodic tasks. This allows
running periodic tasks in parallel and relying on more standard interfaces
(futures, executors) when dealing with asynchronous execution.
A green thread executor is used instead of using an eventlet green pool
directly. The maximum number of workers is taken from the existing
workers_pool_size configuration option, and no tasks are allowed
to be enqueued to mimic the previous behaviour (might be lifted later).
The periodic tasks worker is using the same executor, and its main loop thread
is also running on it. For this reason minimum value for workers_pool_size
is now 3: periodic task main loop, keep alive thread and at least one thread for
other tasks. A special decorator for driver-periodic tasks is now deprecated,
as the generic decorator can be used there as well.
Closes-Bug: #1526277
Change-Id: I57bf7cebfb6db805b6c521bacfef2993b16ce1ee
Example local.conf from Ironic docs uses $HOME/ironic-bm-logs as VM log dir.
On some systems (e.g. Fedora) user's home is accessible only to the owner by
default which causes "permission denied" errors when starting VMs because
QEMU domains are running as non-root user ("qemu" in Fedora).
Extend the documentation with note about possible problems with custom
log directory set using IRONIC_VM_LOG_DIR.
Change-Id: Ia1d7688fd71c4853538621ec32b2d4a024f52a76
Closes-Bug: #1532184
This change adds documentation on setting proxy properties that will
be used by IPA ramdisk to download a disk image.
Closes-bug: #1526222
Change-Id: Ib640da7304e8a5779e74e1f15898229b6f772b11
Since we have automated cleaning and manual cleaning, the config
'clean_nodes' is a bit confusing since it only refers to automated
cleaning. It is replaced with 'automated_clean'.
This deprecates the 'clean_nodes' config; the plan is to delete it
in Newton cycle.
Updates to the documentation to explicitly mention automated vs
manual cleaning is done in a separate patch.
This includes a reno-style release note about the upgrade impact.
Change-Id: I5b4fbac1753cb4213eb151b663490f381b751597
Partial-Bug: #1526290
This adds an API to allow manual cleaning of nodes, via
PUT /v1/nodes/<node_ident>/states/provision. The argument
'target' is 'clean', and the argument 'clean_steps' (the
list of clean steps to be performed on the node) must be
specified.
The API version is bumped to 1.15.
Change-Id: I0e34407133684e34c4ab9446b3521a24f3038f92
Partial-Bug: #1526290
Updated the "Boot mode support" section to include more details about
the boot mode capability
Closes-Bug: #1540857
Change-Id: Ib0ec1bf0e308d2c761efb8b483a6edb4194f0ebd
Users are asking how to add new conductors. But install guide
missing a clear description about that.
So this will seperate API and Conductor configs to guide user adding
new conductors easily.
Change-Id: I40f6a13c2561de2c9b311b9a988db8ef733eb912
Implements: blueprint online-upgrade-support
Closes-Bug: #1529021
This patch is enabling the D000 error (duplicated target names) in doc8
and fixing the occurrences of this error in the docs.
Change-Id: Iac048d213e0571b99696ec708f5c07d6e1bebb19
This patch is extending the root device hints to support the device name
as input.
It's important to note that for SATA, SCSI and IDE disk controllers
the name is not recommended to be used because the order in which the
device nodes are added in Linux is arbitrary, resulting in devices like
/dev/sda and /dev/sdb switching around at boot time. The documentation
was updated to inform operators about this problem.
Depends-On: I48d6456c75bbe6ddf16ac6561e5461ca51eb9c37
Change-Id: I564d68ab1c66505195745c34e16e829b45a00a75
Closes-Bug: #1526732
This patch is enabling the doc8 style checker for the *.rst files in
Ironic.
Since this patch is just the first stab at enabling this new check two
errors are currently being ignored by doc8 because of the number of
occurrences in our docs:
* D000 - Duplicated target names. We do have many links with generic
names scattered around the docs (e.g "see", "link")
* D001 - Line's too long
These errors will be fixed in a following patch.
Change-Id: I32fb5a3104b9773c55a80a84dd81e49c567c76ac
This updates the state machine diagram and documentation to indicate
which transitions are initiated by API requests versus the ones that
are internally done by the conductor. Stable states are highlighted
a bit.
Change-Id: I1a2de81b14696286f1da47c06374ad235962c849
Closes-Bug: #1527316
DRAC specific code from Ironic is moving to its own project, to
python-dracclient project. This patch finishes refactoring code in
Ironic to use the new library.
Change-Id: I6223dbbeb770d773ebdd72277017156cbdb1d035
This reorganizes the developer's main page by adding a
'Commands and API References' section at the same level
as the sections for Administrator's & Developer's guides.
It also removes subsections like 'Introduction' and 'Overview'
that didn't make sense any more since they included more than
one might expect from such sections.
Change-Id: Ibf5415d946238ffadedc36c9a731f773f4fa2d71
This adds a section to the vendor-passthru documentation
about backwards compatibility (which isn't necessary but
desirable) for vendor-passthru methods.
Change-Id: I27b4a6638772e3508e9dab34d90ca904198352f0
This change adds documentation in code contribution guide on how to
propose new features to ironic using "Requests for Feature
Enhancements".
Change-Id: I439f073f00e3732ad246765389d17bc54f96fe13
The documentation in the master should reflect to the current version of
the code, therefore information from previous releases should be
removed. This patch is simplifying the flavor creation section of the
documentation because it reflected to many different versions of Ironic,
since Icehouse.
Change-Id: I5d3d54783dcaf1828cf8e09efcf2239566e5a916
Partial-Bug: #1523962
The API should not return tracebacks in a production environment. As
deployers often run services in debug mode, because OpenStack is hard to
debug, we should not return tracebacks in debug mode. To allow
developers etc to continue to use this feature, add a new config option
'debug_tracebacks_in_api' that maintains this behavior.
Also add to troubleshooting docs.
Change-Id: Idbbf7efc45140e9e3d8b9491edd58905cbba0363
Closes-Bug: #1525002
This patch is updating the "Developer Quick-Start" guide to instruct
people using Fedora 23+ to install a package called "redhat-rpm-config".
This is needed to build a virtualenv for development successfully.
Closes-Bug: #1527614
Change-Id: I95c927330faea009b327492a3884e01b9c44606d
As ironic is installed as devstack plugin, add this to sample
local.conf file. Apart from that, some formatting issues in
dev-quickstart are fixed.
Depends-On: I5125fce295c79600781469c2f48bea80e7600081
Change-Id: I30683b2569e6ca1233f54d1529a74f6a63cd633e
rabbit_host/rabbit_userid/rabbit_password/rabbit_virtual_host are
no longer belong to default group. They are under
oslo_messaging_rabbit group right now.
Close-Bug: 1529202
Change-Id: Iff25c3daed35a8490abc7914a79eb3427d2803f5