A python client implementing the Ironic API.
Go to file
Jenkins d73ddeda1b Merge "Updated from global requirements" into stable/ocata 2017-09-05 18:35:50 +00:00
doc/source Merge "Allow creating portgroups via create commands" 2017-01-25 20:38:02 +00:00
ironicclient OSC 'node list' recognizes all provision states 2017-08-28 12:32:31 +02:00
releasenotes OSC 'node list' recognizes all provision states 2017-08-28 12:32:31 +02:00
tools Merge "Change os_tenant_name to os_project_name in tests configuration script" 2017-01-25 17:17:41 +00:00
.coveragerc Fix coverage target 2016-07-27 14:12:42 -07:00
.gitignore Update .gitignore to ignore .idea of PyCharm 2016-10-10 14:00:38 +08:00
.gitreview Update .gitreview for stable/ocata 2017-01-26 00:53:38 +00:00
.testr.conf Switch tox unit test command to use ostestr 2015-12-15 07:45:07 -08:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-17 09:24:45 -05:00
LICENSE Add initial files 2013-09-05 16:35:21 -07:00
README.rst Show team and repo badges on README 2016-11-25 13:35:48 +01:00
requirements.txt Updated from global requirements 2017-05-15 23:38:33 +00:00
setup.cfg Add a new OSC command for Inject NMI 2017-01-19 15:45:56 +09:00
setup.py Updated from global requirements 2015-09-17 12:16:41 +00:00
test-requirements.txt Merge "Add basic tests for OSC plugin baremetal node commands" 2016-11-17 00:11:37 +00:00
tox.ini Update UPPER_CONSTRAINTS_FILE for stable/ocata 2017-01-26 00:53:39 +00:00

README.rst

Team and repository tags

image

Python bindings for the Ironic API

This is a client for the OpenStack Ironic API. It provides a Python API (the ironicclient module) and a command-line interface (ironic).

Development takes place via the usual OpenStack processes as outlined in the developer guide. The master repository is on git.openstack.org.

python-ironicclient is licensed under the Apache License like the rest of OpenStack.

Contents:

Python API

Quick-start Example::

>>> from ironicclient import client >>> >>> kwargs = {'os_auth_token': '3bcc3d3a03f44e3d8377f9247b0ad155', >>> 'ironic_url': 'http://ironic.example.org:6385/'} >>> ironic = client.get_client(1, **kwargs)

Command-line API

This package will install the ironic command line interface that you can use to interact with the ironic API.

In order to use the ironic CLI you'll need to provide your OpenStack tenant, username, password and authentication endpoint. You can do this with the --os-tenant-name, --os-username, --os-password and --os-auth-url parameters, though it may be easier to set them as environment variables:

$ export OS_TENANT_NAME=project
$ export OS_USERNAME=user
$ export OS_PASSWORD=pass
$ export OS_AUTH_URL=http://auth.example.com:5000/v2.0

To use a specific Ironic API endpoint:

$ export IRONIC_URL=http://ironic.example.com:6385

An example of how to create a basic node with the pxe_ipmitool driver:

$ ironic node-create -d pxe_ipmitool

An example of creating a port on a node:

$ ironic port-create -a AA:BB:CC:DD:EE:FF -n nodeUUID

An example of updating driver properties for a node:

$ ironic node-update nodeUUID add driver_info/ipmi_address=<IPaddress>
$ ironic node-update nodeUUID add driver_info/ipmi_username=<username>
$ ironic node-update nodeUUID add driver_info/ipmi_password=<password>

For more information about the ironic command and the subcommands available, run:

$ ironic help

Change logs with information about specific versions (or tags) are available at:

http://git.openstack.org/cgit/openstack/python-ironicclient/.