Stein Series Release Notes


Bug Fixes

  • Restore functionality when using the current release of keystoneauth by using the correct key file arguments (cacert, cert, key).

  • Fixes an issue where some failure modes of communication with the Ironic API could result in an exception that circumvents the client’s retry mechanisms. In particular this includes HTTP 503 service unavailable which is seen when Ironic operates behind a load balancer, and no backend is available to handle the request.

  • openstack baremetal node list --owner was returning an error instead of a list of nodes for the specified owner. It has been fixed.

    See story 2006563 for details.


Bug Fixes

  • Prevent trying to access endpoints with /v1/v1 when using endpoint overrides containing /v1.


Bug Fixes

  • Fixes an issue where an endpoint_override was not considered when performing version negotiation, which would can result in the client attempting to base version negotiation off of an entry in the service catalog as opposed to an endpoint_override.


New Features

  • The consumer of ironicclient may be deriving their get_client kwargs from config inherited from ksa, where the interface option has been deprecated in favor of valid_interfaces. To accomodate this, we now accept valid_interfaces as a kwarg, giving it precedence over interface. However, we still accept interface, as the consumer may be deriving kwargs from a non-conf source (such as an already-created ksa Adapter where valid_interfaces has already been translated to interfaces).

  • Adds the ability to list and show conductors known by the Bare Metal service, as well as showing the conductor field on the node, introduced in API 1.49.

  • Adds the Event resource and the Python SDK method to support publishing events to the Bare Metal service using the /v1/events API endpoint (introduced in API version 1.54).


    Events are not intended for end-user usage. (Internal use only.)

  • Adds support for Smart NIC ports by adding the --is-smartnic argument to the following CLI commands:

    • openstack baremetal port create

    • openstack baremetal port set

    • openstack baremetal port unset

    This was introduced in API version 1.53.

  • Adds description field support, which is introduced in ironic API 1.51. This field is used to store informational text about the node. User can also do queries for nodes where their description field contains specified substring.

  • Adds support to display and update the owner field of nodes, which is introduced in API 1.50.

  • Adds Python API and CLI for the allocation API introduced in API version 1.52. Adds new commands:

    • openstack baremetal allocation create

    • openstack baremetal allocation delete

    • openstack baremetal allocation get

    • openstack baremetal allocation list

  • Supports passing a JSON object to --config-drive to build the config drive on the server side (requires API version 1.56) to the following commands:

    • openstack baremetal node deploy <node> --config-drive '{...}'

    • openstack baremetal node rebuild <node> --config-drive '{...}'

  • Adds Python API and CLI for the deploy templates API introduced in API version 1.55. The following new commands are available:

    • openstack baremetal deploy template create

    • openstack baremetal deploy template delete

    • openstack baremetal deploy template list

    • openstack baremetal deploy template set

    • openstack baremetal deploy template show

Bug Fixes

  • The interface argument was being ignored so that the HTTP client was always using the public endpoint for Ironic. This fixes it so that the interface argument is taken into consideration. See story 2005118.


New Features

  • Adds the ability to set the automated_clean field (available starting with API version 1.47) on the baremetal node, to enable the automated cleaning feature at the node level.

  • Adds the ability to set and unset the protected and protected_reason fields introduced in API 1.48. Setting protected allows protecting a deployed node from undeploying, rebuilding and deleting.