Bases: ironic_python_agent.extensions.base.ExecuteCommandMixin
Class for base agent functionality.
Get a list of all network interfaces available.
Excludes loopback connections.
Returns: | list of network interfaces available. |
---|---|
Raises: | LookupAgentInterfaceError if a valid interface could not be found. |
Get a specific command result by ID.
Returns: | a ironic_python_agent.extensions.base. BaseCommandResult object. |
---|---|
Raises: | RequestedObjectNotFoundError if command with the given ID is not found. |
Get UUID for Ironic node.
If the agent has not yet heartbeated to Ironic, it will not have the UUID and this will raise an exception.
Returns: | A string containing the UUID for the Ironic node. |
---|---|
Raises: | UnknownNodeError if UUID is unknown. |
Retrieve a serializable status.
Returns: | a ironic_python_agent.agent.IronicPythonAgent instance describing the agent’s status. |
---|
Get a list of command results.
Returns: | list of ironic_python_agent.extensions.base. BaseCommandResult objects. |
---|
Set advertised IP address for the agent, if not already set.
If agent’s advertised IP address is still default (None), try to find a better one. If the agent’s network interface is None, replace that as well.
Raises: | LookupAgentInterfaceError if a valid network interface cannot be found. |
---|---|
Raises: | LookupAgentIPError if an IP address could not be found |
Bases: threading.Thread
Thread that periodically heartbeats to Ironic.
Bases: ironic_python_agent.encoding.Serializable
Represents the status of an agent.