Queens Series Release Notes

2.2.1

Bug Fixes

  • Waiting for a provision state to be reached (via CLI --wait argument or the wait_for_provision_state function) no longer aborts when the node’s last_error field gets populated. It can cause a normal deployment to abort if a heartbeat from the ramdisk fails because of locking - see story 2002094.

2.2.0

New Features

  • Allows a python API user to pass latest to the client creation request for the os_ironic_api_version parameter. The version utilized for REST API requests will, as a result, be the highest available version understood by both the ironicclient library and the server.

  • Adds base client properties to provide insight to a python API user of what the current REST API version that will be utilized, and if API version negotiation has occured. These new properties are client.current_api_version and client.is_api_version_negotiated respectively.

  • Adds additional base client method to allow a python API user to trigger version negotiation and return the negotiated version. This new method is client.negotiate_api_version().

  • The os_ironic_api_version parameter now accepts a list of REST API micro-versions to attempt to negotiate with the remote server. The highest available microversion in the list will be negotiated for the remaining lifetime of the client session.

  • Adds support for reading and modifying traits for a node, including adding traits to the detailed output of a node. This is available starting with Bare Metal API version 1.37.

    The new commands are:

    • openstack baremetal node trait list <node>

    • openstack baremetal node add trait <node> <trait> [...]

    • openstack baremetal node remove trait <node> [<trait> [...]] [--all]

    It also adds the following methods to the Python SDK:

    • NodeManager.get_traits

    • NodeManager.add_trait

    • NodeManager.set_traits

    • NodeManager.remove_trait

    • NodeManager.remove_all_traits

Bug Fixes

  • Fixes bug 1745099, which prevented a port group’s mode from being set to an integer value via the openstack baremetal port group set command.

Other Notes

  • The maximum supported version supported for negotiation is now defined in the common/http.py file. Any new feature added to the API client library must increment this version.

  • The maximum known version supported by the OpenStackClient plugin is now defined by the maximum supported version for API negotiation as defined in the common/http.py file.

2.1.0

Bug Fixes

  • Replaces openstack baremetal node power <on|off> with the two commands:

    • openstack baremetal node power on and

    • openstack baremetal node power off.

    There is no change to the command the user enters (the actual command line is the same). However, help (e.g. via openstack -h baremetal) will list the two power commands (instead of the original one).

2.0.0

Prelude

The 2.0 release has three major changes:

  • The default API version for the openstack baremetal and ironic commands changed from 1.9 to latest. latest is the maximum version understood by both the client and the server. This change makes the CLI automatically pull in new features and changes (including potentially breaking), from servers.

  • The python-ironicclient package no longer includes the python-openstackclient (OSC) package as a requirement. python-openstackclient is needed if using the openstack baremetal CLI.

  • The ironic command line interface (ironic commands) is deprecated and will be removed in the OpenStack S* release. Please use the openstack baremetal CLI instead.

New Features

  • Adds missing wanboot value to the list of supported boot devices.

  • The ironic command now supports the specification of API version 1. The actual version used will be the maximum 1.x version understood by both the client and the server. Thus, it is currently identical to the latest value.

  • The bare metal OSC client (openstack baremetal commands) now supports the specification of API version 1. The actual version used will be the maximum 1.x version understood by both the client and the server. Thus, it is currently identical to the latest value.

  • Adds the ability to specify a configuration drive when rebuilding a node, via the --config-drive option to the openstack baremetal node rebuild command. This is available starting with Bare Metal API version 1.35.

Upgrade Notes

  • The default API version for the ironic command changed from 1.9 to latest. latest is the maximum version understood by both the client and the server. This change makes the CLI automatically pull in new features and changes (including potentially breaking), when talking to new servers.

    Scripts that used the previous default API version, or that rely on some specific API behavior, should set the IRONIC_API_VERSION environment variable or use the --ironic-api-version CLI argument.

    Note

    This change does not affect the Python API.

  • The default API version for the bare metal OSC client (openstack baremetal commands) changed from 1.9 to latest. latest is the maximum version understood by both the client and the server. This change makes the CLI automatically pull in new features and changes (including potentially breaking), when talking to new servers.

    Scripts that used the previous default API version, or that rely on some specific API behavior, should set the OS_BAREMETAL_API_VERSION environment variable or use the --os-baremetal-api-version CLI argument.

    Note

    This change does not affect the Python API.

  • python-ironicclient package no longer has the python-openstackclient package (OSC) as a requirement.

    Users installing only the python-ironicclient package will not automatically get access to openstack baremetal ... OSC commands. To have them available, the python-openstackclient package must be installed separately, or, when installing python-ironicclient via pip, the new cli extra can be used to also install OSC:

    pip install python-ironicclient[cli]
    
  • These previously deprecated commands were removed and are no longer available:

    • openstack baremetal delete

    • openstack baremetal list

    • openstack baremetal show

    • openstack baremetal set

    • openstack baremetal unset

    Instead, use these corresponding equivalent commands:

    • openstack baremetal node delete

    • openstack baremetal node list

    • openstack baremetal node show

    • openstack baremetal node set

    • openstack baremetal node unset

  • Support for creating a single node via openstack baremetal create had been previously deprecated; it is now no longer available. Instead, use the equivalent command openstack baremetal node create. The only valid usage of openstack baremetal create is to create various resources (chassis, nodes, port groups, and ports) from resource files.

Deprecation Notes

  • The ironic command line interface (ironic commands) is deprecated and will be removed in the OpenStack S* release. Please use the openstack baremetal command line interface instead.

Bug Fixes

  • openstack baremetal commands no longer fail when specifying latest as the API version (via --os-baremetal-api-version or export OS_BAREMETAL_API_VERSION=latest). For more details, see bug 1712935.

  • Fixes a bug where the client could not access the ironic API service when the client was instantiated with a keystone token and an ironic API endpoint that included a virtual host (such as “http://hostname/baremetal”). For more details, see bug 1721599.

  • Users of the ironic command no longer have to specify an explicit API version to use the latest features. The default API version changed from 1.9 to latest, which is the maximum version understood by both the client and the server.

  • Users of the openstack baremetal commands no longer have to specify an explicit API version to use the latest features. The default API version changed from 1.9 to latest, which is the maximum version understood by both the client and the server.

  • When using --os-baremetal-api-version=latest (for openstack baremetal CLI) or --ironic-api-version=latest (for ironic CLI), the resulting API version is now the maximum API version supported by both the client and the server. Previously, the maximum API version supported by the client was used, which prevented latest from working with older servers.

  • No longer emits the incorrect warning “Please specify what to set” (or “unset”) when only the --target-raid-config is specified in the openstack baremetal node set (or unset) command.