429b88e152
Only 1.11 is a breaking change, and it's needed to support ENROLL state in python-tripleoclient. Adding support for all recent versions was no harder than adding support for one, since the version number is passed uninspected to the internal HTTP client in all cases. API versions 1.1--1.4 and 1.7--1.8 were previously unsupported, despite higher versions being supported. I couldn't see any reason for this (there are tests in the main Ironic codebase for the use of those minor versions), so I added those in too. The file ironicclient/osc/client.py seemed to just duplicate code from openstackclient.common.utils and add an extra level of indirection without providing any benefit. It also required the list of supported APIs to be maintained in two places, so rather than duplicate my changes I've removed it. Change-Id: I854515123c24903190e297dfc93813574fb99deb |
||
---|---|---|
doc/source | ||
ironicclient | ||
releasenotes | ||
tools | ||
.gitignore | ||
.gitreview | ||
.testr.conf | ||
CONTRIBUTING.rst | ||
LICENSE | ||
README.rst | ||
requirements.txt | ||
setup.cfg | ||
setup.py | ||
test-requirements.txt | ||
tox.ini |
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
- License: Apache License, Version 2.0
- Documentation: http://docs.openstack.org/developer/python-ironicclient
- Source: http://git.openstack.org/cgit/openstack/python-ironicclient
- Bugs: http://bugs.launchpad.net/python-ironicclient
Change logs with information about specific versions (or tags) are available at:
http://git.openstack.org/cgit/openstack/python-ironicclient/.