A python client implementing the Ironic API.
Go to file
Steve Baker 59df415bbf Avoid using 'foo' as invalid JSON test data
Downstream test environments appear to have a file called 'foo' either
created out-of-band, or created by tests executed in a
non-deterministic order.

This changes the test data to very invalid json which is unlikely to
be a filename, ensuring the expected codepath is tested.

Change-Id: I88ed81337c6e2d724b3cf4ddf90e0d60fa052d1c
2022-03-01 13:42:54 +13:00
doc Fix references to ironicclient classes and methods 2021-10-18 15:38:42 +02:00
ironicclient Avoid using 'foo' as invalid JSON test data 2022-03-01 13:42:54 +13:00
playbooks/functional Fix missing tox in functional devstack-minimal based job 2020-06-24 16:52:22 +02:00
releasenotes Add node history support 2021-12-01 07:24:27 -08:00
tools Remove future dependency 2020-05-04 15:14:53 +02:00
zuul.d Use only Yoga tests 2021-12-14 09:01:24 +01:00
.coveragerc Fix coverage target 2016-07-27 14:12:42 -07:00
.gitignore Drop python 2.7 support and testing 2019-11-22 11:08:56 +01:00
.gitreview OpenDev Migration Patch 2019-04-19 19:29:51 +00:00
.stestr.conf Replace testr with stestr 2017-10-06 07:20:47 +00:00
bindep.txt Fix for missing fonts in PDF jobs 2021-07-26 17:12:02 +02:00
CONTRIBUTING.rst Update the documentation link for doc migration 2017-08-02 08:35:17 +00:00
LICENSE Add initial files 2013-09-05 16:35:21 -07:00
lower-constraints.txt Add lower-constraints job to current development branch 2021-08-12 11:58:35 +02:00
README.rst Add PyPi link to readme.rst 2021-01-03 11:20:52 +08:00
requirements.txt Add lower-constraints job to current development branch 2021-08-12 11:58:35 +02:00
setup.cfg Merge "Add node history support" 2022-01-04 18:05:30 +00:00
setup.py Cleanup py27 support 2020-04-04 16:50:23 +02:00
test-requirements.txt Move pep8 dependencies from test-requirements to tox.ini 2020-12-23 12:13:40 +00:00
tox.ini Add lower-constraints job to current development branch 2021-08-12 11:58:35 +02:00

Python bindings for the Ironic API

Team and repository tags

image

Overview

This is a client for the OpenStack Bare Metal API. It provides:

  • a Python API: the ironicclient module, and
  • a command-line interfaces: openstack baremetal

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

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

Contents:

Project resources

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)

openstack baremetal CLI

The openstack baremetal command line interface is available when the bare metal plugin (included in this package) is used with the OpenStackClient.

There are two ways to install the OpenStackClient (python-openstackclient) package:

  • along with this python-ironicclient package:

    # pip install python-ironicclient[cli]
  • directly:

    # pip install python-openstackclient

An example of creating a basic node with the ipmi driver:

$ openstack baremetal node create --driver ipmi

An example of creating a port on a node:

$ openstack baremetal port create --node <UUID> AA:BB:CC:DD:EE:FF

An example of updating driver properties for a node:

$ openstack baremetal node set --driver-info ipmi_address=<IPaddress> <UUID or name>

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

$ openstack help baremetal