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.
Zuul 6f1be0651b Merge "Add support for fields in drivers CLI" 1 month ago
doc Update project conundrum related docs 5 months ago
ironicclient Merge "Add support for fields in drivers CLI" 1 month ago
playbooks/functional Fix missing tox in functional devstack-minimal based job 1 year ago
releasenotes Merge "Add support for fields in drivers CLI" 1 month ago
tools Remove future dependency 2 years ago
zuul.d Add Python3 yoga unit tests 2 months ago
.coveragerc Fix coverage target 5 years ago
.gitignore Drop python 2.7 support and testing 2 years ago
.gitreview OpenDev Migration Patch 3 years ago
.stestr.conf Replace testr with stestr 4 years ago
CONTRIBUTING.rst Update the documentation link for doc migration 4 years ago
LICENSE Add initial files 8 years ago
README.rst Add PyPi link to readme.rst 10 months ago
bindep.txt Fix for missing fonts in PDF jobs 3 months ago
lower-constraints.txt Add lower-constraints job to current development branch 3 months ago
requirements.txt Add lower-constraints job to current development branch 3 months ago
setup.cfg Add support for changing 'boot_mode' and 'secure_boot' states 2 months ago
setup.py Cleanup py27 support 2 years ago
test-requirements.txt Move pep8 dependencies from test-requirements to tox.ini 10 months ago
tox.ini Add lower-constraints job to current development branch 3 months ago

README.rst

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