A Python agent for provisioning and deprovisioning Bare Metal servers.
Go to file
Julian Edwards f57cbccf8b Prevent tests' unmocked access to utils.execute()
This change introduces a new base test class that mocks out
utils.execute and forces an exception if it gets called.
This has rooted out many tests that were doing this as a side effect of
calling other functions, doing things like modprobe and running iscsi
on the host's actual machine.

The tests are all now appropriately patched in places where this was
happening, and the new base class permanently prevents this from
accidentally happening again.

If you really want to call utils.execute() then you need to re-mock it
in your unit test.

Change-Id: Idf87d09a9c01a6bfe2767f8becabe65c02983518
2017-05-15 10:48:43 +10:00
doc/source Merge "Configure and use SSL-related requests options" 2017-02-07 09:57:49 +00:00
etc/ironic_python_agent Configure and use SSL-related requests options 2017-01-13 11:33:44 +02:00
imagebuild imagebuild: coreos: Build sha256 checksum files 2017-03-02 15:44:29 +00:00
ironic_python_agent Prevent tests' unmocked access to utils.execute() 2017-05-15 10:48:43 +10:00
releasenotes Merge "Fix logs encoding in py3" 2017-03-14 11:25:49 +00:00
tools Use oslo-config-generator for sample config 2016-12-09 21:01:02 +02:00
.gitignore Update .gitignore to ignore .idea of PyCharm 2016-10-10 13:58:43 +08:00
.gitreview add(gerrit support): Required to move to openstack 2014-03-07 13:30:45 -08:00
.testr.conf Split functional and py27 tests 2015-08-28 14:16:34 -07:00
.travis.yml Preparing for OpenStack testing environment 2014-03-11 12:50:12 -07:00
CONTRIBUTING.rst Fix missing newline at end-of-file in CONTRIBUTING.rst 2016-12-21 21:18:43 -08:00
Dockerfile Enforce upper-constraints when building ramdisks 2016-08-26 09:06:24 -04:00
LICENSE add license file 2013-09-17 13:41:59 -07:00
README.rst Show team and repo badges on README 2016-11-25 13:34:58 +01:00
plugin-requirements.txt Add "logs" and "extra-hardware" inspection collectors 2015-10-01 18:25:30 +02:00
proxy.sh Add support for proxy servers during image build 2016-02-04 14:27:49 -08:00
requirements.txt Updated from global requirements 2017-03-13 19:32:22 +00:00
setup.cfg Merge "Add a new Hardware Manager for CNA network card" 2016-12-19 16:16:10 +00:00
setup.py Updated from global requirements 2017-03-02 11:45:38 +00:00
test-requirements.txt Use flake8-import-order 2017-02-16 09:46:21 -08:00
tox.ini flake8: Specify 'ironic_python_agent' as name of app 2017-03-16 07:09:07 -07:00

README.rst

Team and repository tags

image

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

For more information see the Image Builder section of the Ironic Python Agent developer guide.

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.