Skip to main content

Class: ResourceClaim

Defined in: lib/k8s/resourceClaim.ts:141

Extends​

Constructors​

Constructor​

new ResourceClaim(json: KubeResourceClaim, cluster?: string): ResourceClaim;

Defined in: lib/k8s/KubeObject.ts:109

Parameters​

ParameterType
jsonKubeResourceClaim
cluster?string

Returns​

ResourceClaim

Inherited from​

KubeObject.constructor

Properties​

PropertyModifierTypeDefault valueDescriptionOverridesInherited fromDefined in
_clusterNamepublicstringundefined--KubeObject._clusterNamelib/k8s/KubeObject.ts:59
jsonDatapublicKubeResourceClaimundefined--KubeObject.jsonDatalib/k8s/KubeObject.ts:56
_internalApiEndpoint?static| ApiClient<KubeObjectInterface> | ApiWithNamespaceClient<KubeObjectInterface>undefined--KubeObject._internalApiEndpointlib/k8s/KubeObject.ts:76
apiNamestaticstring'resourceclaims'Name of the resource, plural, used in APIKubeObject.apiName-lib/k8s/resourceClaim.ts:143
apiVersionstaticstring'resource.k8s.io/v1'Group and version of the resource formatted as "GROUP/VERSION", e.g. "policy.k8s.io/v1".KubeObject.apiVersion-lib/k8s/resourceClaim.ts:144
isNamespacedstaticbooleantrueWhether the object is namespaced.KubeObject.isNamespaced-lib/k8s/resourceClaim.ts:145
isScalablereadonlybooleanundefinedWhether the object is scalable, and should have a ScaleButton-KubeObject.isScalablelib/k8s/KubeObject.ts:74
kindstaticstring'ResourceClaim'The kind of the object. Corresponding to the resource kind in Kubernetes.KubeObject.kind-lib/k8s/resourceClaim.ts:142
readOnlyFieldsstaticstring[][]Readonly field defined as JSONPath paths-KubeObject.readOnlyFieldslib/k8s/KubeObject.ts:58

Accessors​

allocatedDevices​

Get Signature​

get allocatedDevices(): DeviceRequestAllocationResult[];

Defined in: lib/k8s/resourceClaim.ts:176

The devices the scheduler granted, empty while the claim is pending.

Returns​

DeviceRequestAllocationResult[]


allocatedNodeName​

Get Signature​

get allocatedNodeName(): string | undefined;

Defined in: lib/k8s/resourceClaim.ts:189

The single node the allocation is restricted to, when the selector names one. The scheduler writes this for node local devices.

Returns​

string | undefined


cluster​

Get Signature​

get cluster(): string;

Defined in: lib/k8s/KubeObject.ts:114

Returns​

string

Set Signature​

set cluster(cluster: string): void;

Defined in: lib/k8s/KubeObject.ts:118

Parameters​
ParameterType
clusterstring
Returns​

void

Inherited from​

KubeObject.cluster


consumers​

Get Signature​

get consumers(): ResourceClaimConsumerReference[];

Defined in: lib/k8s/resourceClaim.ts:181

The workloads allowed to use this claim. A back reference, not an owner.

Returns​

ResourceClaimConsumerReference[]


detailsRoute​

Get Signature​

get detailsRoute(): string;

Defined in: lib/k8s/KubeObject.ts:126

Returns​

string

Inherited from​

KubeObject.detailsRoute


isAllocated​

Get Signature​

get isAllocated(): boolean;

Defined in: lib/k8s/resourceClaim.ts:166

Whether the scheduler has answered this claim.

Returns​

boolean


isNamespaced​

Get Signature​

get isNamespaced(): boolean;

Defined in: lib/k8s/KubeObject.ts:235

Returns​

boolean

Inherited from​

KubeObject.isNamespaced


isScalable​

Get Signature​

get isScalable(): boolean;

Defined in: lib/k8s/KubeObject.ts:239

Returns​

boolean

Inherited from​

KubeObject.isScalable


kind​

Get Signature​

get kind(): any;

Defined in: lib/k8s/KubeObject.ts:189

Returns​

any

Inherited from​

KubeObject.kind


listRoute​

Get Signature​

get listRoute(): string;

Defined in: lib/k8s/KubeObject.ts:181

Returns​

string

Inherited from​

KubeObject.listRoute


metadata​

Get Signature​

get metadata(): KubeMetadata;

Defined in: lib/k8s/KubeObject.ts:231

Returns​

KubeMetadata

Inherited from​

KubeObject.metadata


pluralName​

Get Signature​

get pluralName(): string;

Defined in: lib/k8s/KubeObject.ts:176

Returns​

string

Inherited from​

KubeObject.pluralName


requestedClasses​

Get Signature​

get requestedClasses(): string[];

Defined in: lib/k8s/resourceClaim.ts:161

Every device class this claim can be satisfied by, without duplicates.

Returns​

string[]


requests​

Get Signature​

get requests(): DeviceRequest[];

Defined in: lib/k8s/resourceClaim.ts:156

The requests this claim makes, in the order they were written.

Returns​

DeviceRequest[]


spec​

Get Signature​

get spec(): ResourceClaimSpec;

Defined in: lib/k8s/resourceClaim.ts:147

Returns​

ResourceClaimSpec


state​

Get Signature​

get state(): ResourceClaimState;

Defined in: lib/k8s/resourceClaim.ts:171

Pending, allocated but unused, or in use. Composed; the API has no phase.

Returns​

ResourceClaimState


status​

Get Signature​

get status(): 
| ResourceClaimStatus
| undefined;

Defined in: lib/k8s/resourceClaim.ts:151

Returns​

| ResourceClaimStatus | undefined


apiEndpoint​

Get Signature​

get static apiEndpoint(): 
| ApiClient<KubeObjectInterface>
| ApiWithNamespaceClient<KubeObjectInterface>;

Defined in: lib/k8s/KubeObject.ts:78

Returns​

| ApiClient<KubeObjectInterface> | ApiWithNamespaceClient<KubeObjectInterface>

Set Signature​

set static apiEndpoint(endpoint: 
| ApiClient<KubeObjectInterface>
| ApiWithNamespaceClient<KubeObjectInterface>): void;

Defined in: lib/k8s/KubeObject.ts:105

Parameters​
ParameterType
endpoint| ApiClient<KubeObjectInterface> | ApiWithNamespaceClient<KubeObjectInterface>
Returns​

void

Inherited from​

KubeObject.apiEndpoint


apiGroupName​

Get Signature​

get static apiGroupName(): string | undefined;

Defined in: lib/k8s/KubeObject.ts:142

Get name of the API group of this resource for example will return batch for CronJob

For core group, like Pods, it will return undefined

API group reference https://kubernetes.io/docs/reference/using-api/#api-groups

Returns​

string | undefined

Inherited from​

KubeObject.apiGroupName


className​

Get Signature​

get static className(): string;

Defined in: lib/k8s/KubeObject.ts:122

Returns​

string

Inherited from​

KubeObject.className


detailsRoute​

Get Signature​

get static detailsRoute(): string;

Defined in: lib/k8s/KubeObject.ts:130

Returns​

string

Inherited from​

KubeObject.detailsRoute


listRoute​

Get Signature​

get static listRoute(): string;

Defined in: lib/k8s/KubeObject.ts:185

Returns​

string

Inherited from​

KubeObject.listRoute


pluralName​

Get Signature​

get static pluralName(): string;

Defined in: lib/k8s/KubeObject.ts:170

Returns​

string

Inherited from​

KubeObject.pluralName

Methods​

_class()​

_class(): typeof KubeObject;

Defined in: lib/k8s/KubeObject.ts:534

Returns​

typeof KubeObject

Inherited from​

KubeObject._class


delete()​

delete(force?: boolean): Promise<any>;

Defined in: lib/k8s/KubeObject.ts:538

Parameters​

ParameterType
force?boolean

Returns​

Promise<any>

Inherited from​

KubeObject.delete


getAge()​

getAge(): string;

Defined in: lib/k8s/KubeObject.ts:223

Returns​

string

Inherited from​

KubeObject.getAge


getAuthorization()​

getAuthorization(verb: string, reqResourseAttrs?: AuthRequestResourceAttrs): Promise<any>;

Defined in: lib/k8s/KubeObject.ts:734

Parameters​

ParameterType
verbstring
reqResourseAttrs?AuthRequestResourceAttrs

Returns​

Promise<any>

Inherited from​

KubeObject.getAuthorization


getCreationTs()​

getCreationTs(): string;

Defined in: lib/k8s/KubeObject.ts:219

Returns​

string

Inherited from​

KubeObject.getCreationTs


getDetailsLink(): string;

Defined in: lib/k8s/KubeObject.ts:193

Returns​

string

Inherited from​

KubeObject.getDetailsLink


getEditableObject()​

getEditableObject(): object;

Defined in: lib/k8s/KubeObject.ts:243

Returns​

object

Inherited from​

KubeObject.getEditableObject


getListLink(): string;

Defined in: lib/k8s/KubeObject.ts:207

Returns​

string

Inherited from​

KubeObject.getListLink


getName()​

getName(): string;

Defined in: lib/k8s/KubeObject.ts:211

Returns​

string

Inherited from​

KubeObject.getName


getNamespace()​

getNamespace(): string | undefined;

Defined in: lib/k8s/KubeObject.ts:215

Returns​

string | undefined

Inherited from​

KubeObject.getNamespace


getValue()​

getValue(prop: string): any;

Defined in: lib/k8s/KubeObject.ts:227

Parameters​

ParameterType
propstring

Returns​

any

Inherited from​

KubeObject.getValue


patch()​

patch(body: RecursivePartial<T>): Promise<any>;

Defined in: lib/k8s/KubeObject.ts:642

Parameters​

ParameterType
bodyRecursivePartial<T>

Returns​

Promise<any>

Inherited from​

KubeObject.patch


patchUpdate()​

patchUpdate(original: KubeObjectInterface, modified: KubeObjectInterface): Promise<KubeObjectInterface>;

Defined in: lib/k8s/KubeObject.ts:566

Updates a resource using JSON Patch (RFC 6902), sending only the diff between the original and modified objects. This avoids 409 Conflict errors on resources that are frequently updated by controllers (e.g. HPA).

Parameters​

ParameterType
originalKubeObjectInterface
modifiedKubeObjectInterface

Returns​

Promise<KubeObjectInterface>

Inherited from​

KubeObject.patchUpdate


scale()​

scale(numReplicas: number): Promise<any>;

Defined in: lib/k8s/KubeObject.ts:613

Parameters​

ParameterType
numReplicasnumber

Returns​

Promise<any>

Inherited from​

KubeObject.scale


update()​

update(data: KubeObjectInterface): Promise<KubeObjectInterface>;

Defined in: lib/k8s/KubeObject.ts:557

Parameters​

ParameterType
dataKubeObjectInterface

Returns​

Promise<KubeObjectInterface>

Inherited from​

KubeObject.update


apiGet()​

static apiGet<K>(
this: (...args: any) => K & typeof KubeObject,
onGet: (...args: any) => void,
name: string,
namespace?: string,
onError?: (err: ApiError | null, cluster?: string) => void,
opts?: object): (...args: any[]) => Promise;

Defined in: lib/k8s/KubeObject.ts:491

Type Parameters​

Type Parameter
K extends KubeObject<any>

Parameters​

ParameterType
this(...args: any) => K & typeof KubeObject
onGet(...args: any) => void
namestring
namespace?string
onError?(err: ApiError | null, cluster?: string) => void
opts?{ cluster?: string; queryParams?: QueryParameters; }
opts.cluster?string
opts.queryParams?QueryParameters

Returns​

(...args: any[]) => Promise

Inherited from​

KubeObject.apiGet


apiList()​

static apiList<K>(
this: (...args: any) => K & typeof KubeObject,
onList: (arg: K[]) => void,
onError?: (err: ApiError, cluster?: string) => void,
opts?: ApiListSingleNamespaceOptions): () => Promise<CancelFunction>;

Defined in: lib/k8s/KubeObject.ts:273

Builds a list request for this object's API endpoint.

Type Parameters​

Type Parameter
K extends KubeObject<any>

Parameters​

ParameterTypeDescription
this(...args: any) => K & typeof KubeObject-
onList(arg: K[]) => voidCallback function to be called when the list is retrieved.
onError?(err: ApiError, cluster?: string) => voidCallback function to be called when an error occurs.
opts?ApiListSingleNamespaceOptionsOptions to be passed to the API endpoint.

Returns​

A parameterless function that starts the list request and resolves to a CancelFunction for stopping it.

() => Promise<CancelFunction>

Inherited from​

KubeObject.apiList


create()​

static create<Args, T>(this: (...args: Args) => T, ...item: Args): T;

Defined in: lib/k8s/KubeObject.ts:484

Type Parameters​

Type Parameter
Args extends any[]
T extends KubeObject<any>

Parameters​

ParameterType
this(...args: Args) => T
...itemArgs

Returns​

T

Inherited from​

KubeObject.create


fetchAuthorization()​

static fetchAuthorization(reqResourseAttrs?: AuthRequestResourceAttrs, cluster?: string): Promise<any>;

Defined in: lib/k8s/KubeObject.ts:659

Performs a request to check if the user has the given permission.

Parameters​

ParameterType
reqResourseAttrs?AuthRequestResourceAttrs
cluster?string

Returns​

Promise<any>

The result of the access request.

Inherited from​

KubeObject.fetchAuthorization


getAuthorization()​

static getAuthorization(
verb: string,
reqResourseAttrs?: AuthRequestResourceAttrs,
cluster?: string): Promise<any>;

Defined in: lib/k8s/KubeObject.ts:687

Parameters​

ParameterType
verbstring
reqResourseAttrs?AuthRequestResourceAttrs
cluster?string

Returns​

Promise<any>

Inherited from​

KubeObject.getAuthorization


getBaseObject()​

static getBaseObject(): Omit<KubeObjectInterface, "metadata"> & object;

Defined in: lib/k8s/KubeObject.ts:778

Returns​

Omit<KubeObjectInterface, "metadata"> & object

Inherited from​

KubeObject.getBaseObject


getErrorMessage()​

static getErrorMessage(err: ApiError | null): "Error" | "Error: Not found" | "Error: No permissions" | null;

Defined in: lib/k8s/KubeObject.ts:763

Parameters​

ParameterType
errApiError | null

Returns​

"Error" | "Error: Not found" | "Error: No permissions" | null

Inherited from​

KubeObject.getErrorMessage


isClassOf()​

static isClassOf<K>(this: K, maybeInstance: KubeObject): maybeInstance is InstanceType<K>;

Defined in: lib/k8s/KubeObject.ts:161

Type guard to check if a KubeObject instance belongs to this class. Compares API group name and kind to determine if the instance matches. This works even if class definitions are duplicated and should be used instead of instanceof.

Type Parameters​

Type Parameter
K extends typeof KubeObject

Parameters​

ParameterTypeDescription
thisK-
maybeInstanceKubeObjectThe KubeObject instance to check.

Returns​

maybeInstance is InstanceType<K>

True if the instance is of this class type, with narrowed type.

Inherited from​

KubeObject.isClassOf


put()​

static put(data: KubeObjectInterface): Promise<KubeObjectInterface>;

Defined in: lib/k8s/KubeObject.ts:609

Parameters​

ParameterType
dataKubeObjectInterface

Returns​

Promise<KubeObjectInterface>

Inherited from​

KubeObject.put


useApiGet()​

static useApiGet<K>(
this: (...args: any) => K & typeof KubeObject,
onGet: (item: K | null) => any,
name: string,
namespace?: string,
onError?: (err: ApiError | null, cluster?: string) => void,
opts?: object): void;

Defined in: lib/k8s/KubeObject.ts:516

Type Parameters​

Type Parameter
K extends KubeObject<any>

Parameters​

ParameterType
this(...args: any) => K & typeof KubeObject
onGet(item: K | null) => any
namestring
namespace?string
onError?(err: ApiError | null, cluster?: string) => void
opts?{ cluster?: string; queryParams?: QueryParameters; }
opts.cluster?string
opts.queryParams?QueryParameters

Returns​

void

Inherited from​

KubeObject.useApiGet


useApiList()​

static useApiList<K>(
this: (...args: any) => K & typeof KubeObject,
onList: (...arg: any[]) => any,
onError?: (err: ApiError, cluster?: string) => void,
opts?: ApiListOptions): void;

Defined in: lib/k8s/KubeObject.ts:308

Type Parameters​

Type Parameter
K extends KubeObject<any>

Parameters​

ParameterType
this(...args: any) => K & typeof KubeObject
onList(...arg: any[]) => any
onError?(err: ApiError, cluster?: string) => void
opts?ApiListOptions

Returns​

void

Inherited from​

KubeObject.useApiList


useGet()​

static useGet<K>(
this: (...args: any) => K,
name: string,
namespace?: string,
opts?: object): [K | null, ApiError | null] & QueryResponse<K, ApiError>;

Defined in: lib/k8s/KubeObject.ts:463

Type Parameters​

Type Parameter
K extends KubeObject<any>

Parameters​

ParameterType
this(...args: any) => K
namestring
namespace?string
opts?{ cluster?: string; initialData?: K; queryParams?: QueryParameters; }
opts.cluster?string
opts.initialData?K
opts.queryParams?QueryParameters

Returns​

[K | null, ApiError | null] & QueryResponse<K, ApiError>

Inherited from​

KubeObject.useGet


useList()​

static useList<K>(this: (...args: any) => K & typeof KubeObject, __namedParameters?: object & QueryParameters): [K[] | null, ApiError | null] & QueryListResponse<(
| ListResponse<K>
| null
| undefined)[], K, ApiError>;

Defined in: lib/k8s/KubeObject.ts:379

Type Parameters​

Type Parameter
K extends KubeObject<any>

Parameters​

ParameterType
this(...args: any) => K & typeof KubeObject
__namedParametersobject & QueryParameters

Returns​

[K[] | null, ApiError | null] & QueryListResponse<( | ListResponse<K> | null | undefined)[], K, ApiError>

Inherited from​

KubeObject.useList