# Constants
DevicePluginPath is the folder the Device Plugin is expecting sockets to be on Only privileged pods have access to this path Note: Placeholder until we find a "standard path".
Healthy means that the device is healty.
KubeletSocket is the path of the Kubelet registry socket.
UnHealthy means that the device is unhealthy.
Current version of the API supported by kubelet.
# Structs
- Allocate is expected to be called during pod creation since allocation failures for any container would result in pod startup failure.
AllocateResponse includes the artifacts that needs to be injected into a container for accessing 'deviceIDs' that were mentioned as part of 'AllocateRequest'.
E.g:
struct Device { ID: "GPU-fef8089b-4820-abfc-e83e-94318197576e", State: "Healthy", Topology: Node:
ID: 1 }.
DeviceSpec specifies a host device to mount into a container.
ListAndWatch returns a stream of List of Devices Whenever a Device state change or a Device disapears, ListAndWatch returns the new list.
Mount specifies a host volume to mount into a container.
- PreStartContainer is expected to be called before each container start if indicated by plugin during registration phase.
PreStartContainerResponse will be send by plugin in response to PreStartContainerRequest.
UnimplementedDevicePluginServer can be embedded to have forward compatible implementations.
UnimplementedRegistrationServer can be embedded to have forward compatible implementations.
# Interfaces
DevicePluginClient is the client API for DevicePlugin service.
DevicePluginServer is the server API for DevicePlugin service.
RegistrationClient is the client API for Registration service.
RegistrationServer is the server API for Registration service.