kubernetes-models
Version:
64 lines (63 loc) • 3.18 kB
TypeScript
import { IIoK8sApimachineryPkgApisMetaV1Condition } from "@kubernetes-models/apimachinery/apis/meta/v1/Condition";
import { IIoK8sApimachineryPkgRuntimeRawExtension } from "@kubernetes-models/apimachinery/runtime/RawExtension";
import { IIoK8sApiResourceV1NetworkDeviceData } from "./NetworkDeviceData.js";
import { ModelData, Model } from "@kubernetes-models/base";
/**
* AllocatedDeviceStatus contains the status of an allocated device, if the driver chooses to report it. This may include driver-specific information.
*
* The combination of Driver, Pool, Device, and ShareID must match the corresponding key in Status.Allocation.Devices.
*/
export interface IAllocatedDeviceStatus {
/**
* Conditions contains the latest observation of the device's state. If the device has been configured according to the class and claim config references, the `Ready` condition should be True.
*
* Must not contain more than 8 entries.
*/
"conditions"?: Array<IIoK8sApimachineryPkgApisMetaV1Condition>;
/**
* Data contains arbitrary driver-specific data.
*
* The length of the raw data must be smaller or equal to 10 Ki.
*/
"data"?: IIoK8sApimachineryPkgRuntimeRawExtension;
/**
* Device references one device instance via its name in the driver's resource pool. It must be a DNS label.
*/
"device": string;
/**
* Driver specifies the name of the DRA driver whose kubelet plugin should be invoked to process the allocation once the claim is needed on a node.
*
* Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver. It should use only lower case characters.
*/
"driver": string;
/**
* NetworkData contains network-related information specific to the device.
*/
"networkData"?: IIoK8sApiResourceV1NetworkDeviceData;
/**
* This name together with the driver name and the device name field identify which device was allocated (`<driver name>/<pool name>/<device name>`).
*
* Must not be longer than 253 characters and may contain one or more DNS sub-domains separated by slashes.
*/
"pool": string;
/**
* ShareID uniquely identifies an individual allocation share of the device.
*/
"shareID"?: string;
}
/**
* AllocatedDeviceStatus contains the status of an allocated device, if the driver chooses to report it. This may include driver-specific information.
*
* The combination of Driver, Pool, Device, and ShareID must match the corresponding key in Status.Allocation.Devices.
*/
export declare class AllocatedDeviceStatus extends Model<IAllocatedDeviceStatus> implements IAllocatedDeviceStatus {
"conditions"?: Array<IIoK8sApimachineryPkgApisMetaV1Condition>;
"data"?: IIoK8sApimachineryPkgRuntimeRawExtension;
"device": string;
"driver": string;
"networkData"?: IIoK8sApiResourceV1NetworkDeviceData;
"pool": string;
"shareID"?: string;
constructor(data?: ModelData<IAllocatedDeviceStatus>);
}
export type { IAllocatedDeviceStatus as IIoK8sApiResourceV1AllocatedDeviceStatus, AllocatedDeviceStatus as IoK8sApiResourceV1AllocatedDeviceStatus };