A python client implementing the Ironic API.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Clark Boylan 98c4f4dbea Fix coverage target 5 years ago
doc/source Merge "Fix Quick-start example syntax." 5 years ago
ironicclient Trivial: Fix wrong comment in power state test 5 years ago
releasenotes Updates supporting ironic-neutron integration 5 years ago
tools Allow functional tests to work with Keystone v3 5 years ago
.coveragerc Fix coverage target 5 years ago
.gitignore Add reno for release notes management 5 years ago
.gitreview Added .gitreview 8 years ago
.testr.conf Switch tox unit test command to use ostestr 5 years ago
CONTRIBUTING.rst Workflow documentation is now in infra-manual 6 years ago
LICENSE Add initial files 8 years ago
README.rst Fix Quick-start example syntax. 5 years ago
requirements.txt Updated from global requirements 5 years ago
setup.cfg Add Python 3.5 classifier and venv 5 years ago
setup.py Updated from global requirements 6 years ago
test-requirements.txt Updated from global requirements 5 years ago
tox.ini Fix coverage target 5 years ago


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.


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: