Ussuri Series Release Notes

4.1.0

Prelude

This release includes a new standalone CLI tool baremetal that is mostly identical to the existing OSC plugin, but

  • Does not require commands to be prefixed with openstack.

  • Does not require python-openstackclient to be installed.

  • Defaults to no authentication.

New Features

  • Adds ability to get list of nodes that are not marked for retirement adding the –no-retired optional argument to the openstack baremetal node list command.

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

  • Adds a new baremetal CLI tool, mostly targeted at standalone users.

Upgrade Notes

  • The dependency on oslo.i18n is now optional. If you would like messages from ironicclient to be translated, you need to install it explicitly.

  • When no session is provided in the get_client call, a session is now created using OpenStackSDK. Only arguments that are supported by it are supported now.

4.0.0

New Features

  • Adds support to create an allocation with an owner, as well as display it. Introduced in API 1.60.

  • Adds the ability to set and unset the retired and retired_reason with API 1.61. Setting the retired field on a node excludes it from scheduling, but still allows the node to be cleaned (unlike maintenance, for instance). The fields can be set irrespective of the node’s state and are meant to be used to prepare nodes for removal from ironic.

Upgrade Notes

  • Python 2.7 support has been dropped. Last release of python-ironicclient to support Python 2.7 is OpenStack Train. The minimum version of Python now supported by python-ironicclient is Python 3.6.

  • An implicit dependency on oslo.config is now explicit.

Bug Fixes

  • Fails with a clear TypeError when a session is not provided to client.Client or v1.client.Client. Before we used to throw:

    _construct_http_client() takes at least 1 argument
    
  • Removes the requirement on passing either endpoint_override or os_ironic_api_version to get_client. This is only required for efficient caching of API versions and shouldn’t be a hard requirement.

  • 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.

  • Fixes a confusing error message when a session is not provided for ironicclient.v1.client.Client.

  • With the removal of the HTTPClient class in the release 3.0.0, it is now mandatory to pass a session into ironicclient.v1.client.Client. The helper call ironicclient.client.get_client can also be used to construct a session implicitly.

  • Fixes TypeError when the bare metal endpoint cannot be detected from a session. A proper EndpointNotFound exception is raised now.

  • Fixes using endpoint_override with the SessionClient.