dparalen fb920f41ed determine tgtd ready status through tgtadm
The intention of the iscsi extension _wait_for_iscsi_daemon function
is to wait till the tgtd process boots completely before running any
iscsi commands through the tgtadm command line utility.  The tgtd
process utilises a unix socket for communication with the user and the
_wait_for_iscsi_daemon function asserts the tgtd process status based
on the socket presence.  The socket name/path to use is not specified
by iscsi extension configuration but rather falls-back to a
(system-wide) default value[1].  Since tgtd version 1.0.60, this path
changed from /var/run/tgtd.ipc_abstract_namespace to
/var/run/tgtd/socket[2] and now causes a false-negative while waiting
for the tgtd process to boot[3].

This patch follows implementation suggestion from the bug report[3] to
avoid relying on the socket presence but rather to check the tgtd
status by trying to communicate through the tgtadm tool.

[1] https://github.com/openstack/ironic-python-agent/blob/
5bbb9ded082f2cfde5e8877e9f33294eb93a5fb7/
ironic_python_agent/extensions/iscsi.py#L47 [2]
https://github.com/fujita/tgt/commit/
d1aa4dcfd691c9409dbad5db49ce6754ce9c1b5a
[3] https://bugs.launchpad.net/ironic-python-agent/+bug/1505923

Closes-Bug: #1505923
Change-Id: If3284e0b441fe6c2da507640c08a4bbefd9dad2b
2015-10-20 04:52:59 +02:00
2014-04-03 21:09:11 +04:00
2015-10-08 15:06:19 +09:00
2015-08-28 14:16:34 -07:00
2015-10-08 14:58:23 +09:00
2013-09-17 13:41:59 -07:00
2015-10-07 00:31:18 +00:00
2015-10-06 17:40:26 +00:00
2015-09-17 16:39:02 +00:00

ironic-python-agent

An agent for controlling and deploying Ironic controlled baremetal nodes.

The ironic-python-agent works with the agent driver in Ironic to provision the node. Starting with ironic-python-agent running on a ramdisk on the unprovisioned node, Ironic makes API calls to ironic-python-agent to provision the machine. This allows for greater control and flexibility of the entire deployment process.

The ironic-python-agent may also be used with the original Ironic pxe drivers as of the Kilo OpenStack release.

Building the IPA deployment ramdisk

See CoreOS Image builder.

Using IPA with devstack

This is covered in the Deploying Ironic with DevStack section of the Ironic dev-quickstart guide.

Project Resources

Project status, bugs, and blueprints are tracked on Launchpad:

http://launchpad.net/ironic-python-agent

Developer documentation can be found here:

http://docs.openstack.org/developer/ironic-python-agent

Additional resources are linked from the project wiki page:

https://wiki.openstack.org/wiki/Ironic-python-agent

IRC channel:

#openstack-ironic

To contribute, start here: Openstack: How to contribute.

Description
A Python agent for provisioning and deprovisioning Bare Metal servers.
Readme 35 MiB
Languages
Python 99.9%
Shell 0.1%