Pike Series (6.0.0 - 6.0.x) Release Notes


Security Issues

  • Fixes insufficient input filtering when looking up a node by information from the introspection data. It could potentially allow SQL injections via the /v1/continue API endpoint. See story 2005678 for details.


Bug Fixes

  • Fixes bug in which the switch_id field in a port’s local_link_connection can be set to a non-MAC address if the processed LLDP has a value other than a MAC address for ChassisID. The bare metal API requires the switch_id field to be a MAC address, and will return an error otherwise. See bug 1748022 for details.


Bug Fixes

  • The older ipmi_address field in the introspection data no longer has priority over the newer bmc_address inventory field during lookup. This fixes lookup based on MAC addresses, when the BMC address is reported as for any reason (see bug 1714944).


New Features

  • Querying ironic-inspector rules API now also returns the invert and multiple attributes of the associated conditions.

  • Add disabled option to add_ports, so discovered nodes can be created without creating ports.

  • Add a check from the link_local_connection plugin to use data stored by the lldp_basic; this avoids parsing the LLDP packets twice.

  • Adds node state to the GET /v1/introspection/<node UUID or name> and GET /v1/introspection API response data.

  • Processing hooks can now define dependencies on other processing hooks. ironic-inspector start up fails when required hooks are not enabled before the hook that requires them.

  • Update pxe_enabled field on ports. It is set to True for the PXE-booting port and False for the remaining ports. Both newly discovered and existing ports are affected.

Upgrade Notes

  • Experimental setting IPMI credentials support was removed from all versions of the API. The current ironic-inspector API version was bumped to 1.12 to mark this change.

  • The default API version was synchronized with the current API version again after removal of the IPMI credentials setting.

  • Ports creating logic was moved from core processing code to the validate_interfaces processing hook. This may affect deployments that disable this hook or replace it with something else. Also make sure to place this hook before any hooks expecting ports to be created.

  • Bare metal API version 1.19 is now required.

  • Removes deprecated configuration options: introspection_delay_drivers from the default section and log_bmc_address from the processing section.

  • Support for rollback actions in introspection rules was removed.

  • Old status records are no longer removed by default. They are still removed if a node is removed from Ironic.

Deprecation Notes

  • The node_status_keep_time configuration option is deprecated. Now that we can remove status information about nodes removed from ironic, this option does not make much sense, and may be confusing

Bug Fixes

  • Timeout in an active state led to an undefined transition error. This is fixed and an introspection finishes now with Timeout error.

  • and an empty string in the bmc_address inventory field are now correctly treated as missing BMC address.

  • For postgreSQL, the database migration command ironic-inspector-dbsync upgrade always failed (with enum NODE_STATE does not exist). This is fixed and the migration now works.

  • Do not fail the whole introspection due to a value formatting error during introspection rules rollback. See bug 1686942 for an example and detailed investigation.