It is not currently possible to stop a running introspection. This may be annoying for the operator, considering the amount of time it takes for the bare metal node to call the continue API request, especially knowing the introspection will fail/time-out eventually (such as when debugging). This patch introduces a REST API endpoint "POST /v1/introspection/<node-UUID>/abort" in order to fill the gap. Upon the abort method call, following preconditions are checked: * there's a bare metal node matching the UUID * introspection was not finished for the node * introspection process is waiting for the node to give the continue call Following Responses are returned to the caller in case the preconditions were not met: * 404 Response in case node wasn't found * 409 Response (resource busy) in case the introspection process is not waiting for the Continue call Otherwise, a 202 Response is returned. When the abort method is processed, the node is powered off and it is black-listed in inspector's firewall to prevent it from booting the introspection image. This happens asynchronously. To prevent interference with the continue call processing, the processing method was updated to give a 400 Response to the introspection client in case continuing a finished or canceled introspection. Limitations: * IMPI credentials are never updated in case introspection was canceled * 202 response is returned even if the introspection was already finished * the endpoint differs from requested "DELETE /v1/introspection/<node-UUID>" Links:  https://bugs.launchpad.net/ironic-inspector/+bug/1525235 Change-Id: If043171f0d292ae2775dc1f26233dd4911599247 Closes-Bug: #1525235
|7 years ago|
|devstack||7 years ago|
|doc||7 years ago|
|ironic_inspector||7 years ago|
|releasenotes||7 years ago|
|rootwrap.d||7 years ago|
|.gitignore||7 years ago|
|.gitreview||7 years ago|
|CONTRIBUTING.rst||7 years ago|
|LICENSE||8 years ago|
|README.rst||7 years ago|
|babel.cfg||8 years ago|
|example.conf||7 years ago|
|ironic-inspector.8||7 years ago|
|plugin-requirements.txt||7 years ago|
|requirements.txt||7 years ago|
|rootwrap.conf||7 years ago|
|setup.cfg||7 years ago|
|setup.py||7 years ago|
|test-requirements.txt||7 years ago|
|tox.ini||7 years ago|
Hardware introspection for OpenStack Bare Metal
This is an auxiliary service for discovering hardware properties for a node managed by Ironic. Hardware introspection or hardware properties discovery is a process of getting hardware parameters required for scheduling from a bare metal node, given it's power management credentials (e.g. IPMI address, user name and password).
- Free software: Apache license
- Source: http://git.openstack.org/cgit/openstack/ironic-inspector
- Bugs: http://bugs.launchpad.net/ironic-inspector
- Blueprints: https://blueprints.launchpad.net/ironic-inspector
- Downloads: https://pypi.python.org/pypi/ironic-inspector
- Documentation: http://docs.openstack.org/developer/ironic-inspector
- Python client library and CLI tool: python-ironic-inspector-client.
ironic-inspector was called ironic-discoverd before version 2.0.0.
For information on any current or prior version, see the release notes.