The ironic_inspector.utils Module¶
-
exception
ironic_inspector.utils.Error(msg, code=400, log_level='error', **kwargs)[source]¶ Bases:
exceptions.ExceptionInspector exception.
-
exception
ironic_inspector.utils.IntrospectionDataNotFound(msg, code=404, **kwargs)[source]¶ Bases:
ironic_inspector.utils.NotFoundInCacheErrorIntrospection data not found.
-
exception
ironic_inspector.utils.IntrospectionDataStoreDisabled(msg, code=400, log_level='error', **kwargs)[source]¶ Bases:
ironic_inspector.utils.ErrorIntrospection data store is disabled.
-
exception
ironic_inspector.utils.NodeStateInvalidEvent(msg, code=400, log_level='error', **kwargs)[source]¶ Bases:
ironic_inspector.utils.ErrorInvalid event attempted.
-
exception
ironic_inspector.utils.NodeStateRaceCondition(*args, **kwargs)[source]¶ Bases:
ironic_inspector.utils.ErrorState mismatch between the DB and a node_info.
-
exception
ironic_inspector.utils.NotFoundInCacheError(msg, code=404, **kwargs)[source]¶ Bases:
ironic_inspector.utils.ErrorException when node was not found in cache during processing.
-
class
ironic_inspector.utils.ProcessingLoggerAdapter(logger, extra)[source]¶ Bases:
oslo_log.log.KeywordArgumentAdapter-
process(msg, kwargs)[source]¶ Process the logging message and keyword arguments passed in to a logging call to insert contextual information. You can either manipulate the message itself, the keyword args or both. Return the message and kwargs modified (or not) to suit your needs.
Normally, you’ll only need to override this one method in a LoggerAdapter subclass for your specific needs.
-
-
ironic_inspector.utils.add_auth_middleware(app)[source]¶ Add authentication middleware to Flask application.
Parameters: app – application.
-
ironic_inspector.utils.add_cors_middleware(app)[source]¶ Create a CORS wrapper
Attach ironic-inspector-specific defaults that must be included in all CORS responses.
Parameters: app – application
-
ironic_inspector.utils.check_auth(request, rule=None, target=None)[source]¶ Check authentication on request.
Parameters: - request – Flask request
- rule – policy rule to check the request against
Raises: utils.Error if access is denied
-
ironic_inspector.utils.get_inventory(data, node_info=None)[source]¶ Get and validate the hardware inventory from introspection data.
-
ironic_inspector.utils.get_valid_macs(data)[source]¶ Get a list of valid MAC’s from the introspection data.
-
ironic_inspector.utils.iso_timestamp(timestamp=None, tz=<UTC>)[source]¶ Return an ISO8601-formatted timestamp (tz: UTC) or None.
Parameters: - timestamp – such as time.time() or None
- tz – timezone
Returns: an ISO8601-formatted timestamp, or None
-
ironic_inspector.utils.processing_logger_prefix(data=None, node_info=None)[source]¶ Calculate prefix for logging.
Tries to use: * node UUID, node._state * node PXE MAC, * node BMC address
Parameters: - data – introspection data
- node_info – NodeInfo or ironic node object
Returns: logging prefix as a string