python-ironicclient 6.0.0 (gazpacho)
We are chuffed to announce the release of: python-ironicclient 6.0.0 This release is part of the gazpacho release series. The source is available from: https://opendev.org/openstack/python-ironicclient Download the package from: https://pypi.org/project/python-ironicclient Please report issues through: https://bugs.launchpad.net/python-ironicclient/+bugs For more details, please see below. 6.0.0 ^^^^^ New Features ************ * Adds support for displaying the node health status field ("health") in the baremetal node list commands. This field exposes the Redfish hardware health status (Status.Health) that is synchronized from BMCs to Ironic node records. The health field is displayed by default in both standard and long listing formats, providing operators with visibility into the hardware health status of managed nodes. This requires Ironic API version "1.109" or later. Upgrade Notes ************* * All baremetal list commands now use actual resource field names (e.g., "uuid", "name", "resource_class") as column headers instead of human-friendly labels (e.g., "UUID", "Name", "Resource Class"). This change ensures consistency between table output, JSON output, and field selection via the "--fields" option. **Action Required**: Scripts that parse the output of baremetal list commands will need to be updated to use the new lowercase, snake_case column headers. For example: * "UUID" → "uuid" * "Name" → "name" * "Resource Class" → "resource_class" * "Instance UUID" → "instance_uuid" * "Power State" → "power_state" * "Provisioning State" → "provision_state" * "Supported driver(s)" → "name" * "Active host(s)" → "hosts" This affects all list commands including node list, port list, portgroup list, allocation list, chassis list, conductor list, deploy template list, driver list, volume connector list, volume target list, runbook list, shard list, and inspection rule list. Bug Fixes ********* * Fixes an inconsistency where column headers in list command table output used different names than the actual resource fields, causing confusion when using the "--fields" option or comparing with JSON output format ("-f json"). * The "health" field has been removed from the default columns in "baremetal node list" output. This aligns the CLI with the Ironic API, which does not include health in default node list responses. The health field remains available via "baremetal node list --long" or "baremetal node list --fields health". Changes in python-ironicclient 5.15.0..6.0.0 -------------------------------------------- 22bf8b2 Add type annotations to `ironicclient/common/apiclient/base.py` 180a4de Add type annotations to `ironicclient/common/apiclient/exceptions.py` cf664df Add type annotations to `ironicclient/common/filecache.py` 5f5b2dc Add type annotations to `ironicclient/common/i18n.py` 8d59cc7 Add mypy infrastructure for type annotation migration fe9a359 Fix field names for selection and json 25b7779 Remove health from default node list columns 21b4716 Filter portgroups by shard 81e881b Add support for node health status field Diffstat (except docs and test files) ------------------------------------- .pre-commit-config.yaml | 6 + ironicclient/common/apiclient/base.py | 244 +++++++++++++-------- ironicclient/common/apiclient/exceptions.py | 156 +++++++------ ironicclient/common/filecache.py | 29 ++- ironicclient/common/http.py | 2 +- ironicclient/common/i18n.py | 12 +- ironicclient/exc.py | 5 +- ironicclient/osc/v1/baremetal_allocation.py | 5 +- ironicclient/osc/v1/baremetal_chassis.py | 5 +- ironicclient/osc/v1/baremetal_conductor.py | 5 +- ironicclient/osc/v1/baremetal_deploy_template.py | 5 +- ironicclient/osc/v1/baremetal_driver.py | 16 +- ironicclient/osc/v1/baremetal_inspection_rule.py | 5 +- ironicclient/osc/v1/baremetal_node.py | 28 +-- ironicclient/osc/v1/baremetal_port.py | 5 +- ironicclient/osc/v1/baremetal_portgroup.py | 12 +- ironicclient/osc/v1/baremetal_runbook.py | 5 +- ironicclient/osc/v1/baremetal_shard.py | 3 +- ironicclient/osc/v1/baremetal_volume_connector.py | 5 +- ironicclient/osc/v1/baremetal_volume_target.py | 5 +- .../unit/osc/v1/test_baremetal_deploy_template.py | 8 +- .../unit/osc/v1/test_baremetal_volume_connector.py | 24 +- .../unit/osc/v1/test_baremetal_volume_target.py | 30 +-- ironicclient/v1/portgroup.py | 8 +- ironicclient/v1/resource_fields.py | 2 + pyproject.toml | 14 ++ ...ode-health-fields-support-c8f3d2a9b7e4f1a5.yaml | 11 + ...es-for-selection-and-json-45c998d1df6df214.yaml | 33 +++ ...alth-from-default-columns-999c8e5c-4ebc-4e.yaml | 8 + test-requirements.txt | 3 + tox.ini | 11 +- 41 files changed, 709 insertions(+), 501 deletions(-) Requirements updates -------------------- diff --git a/test-requirements.txt b/test-requirements.txt index de1c881..060cd6f 100644 --- a/test-requirements.txt +++ b/test-requirements.txt @@ -9,0 +10,3 @@ python-openstackclient>=3.12.0 # Apache-2.0 + +# Type checking +mypy>=1.0.0 # MIT
participants (1)
-
no-reply@openstack.org