ResourcePoolStatusRequest v1alpha3

ResourcePoolStatusRequest triggers a one-time calculation of resource pool status based on the provided filters.

apiVersion: resource.k8s.io/v1alpha3

import "k8s.io/api/resource/v1alpha3"

ResourcePoolStatusRequest

ResourcePoolStatusRequest triggers a one-time calculation of resource pool status based on the provided filters. Once status is set, the request is considered complete and will not be reprocessed. Users should delete and recreate requests to get updated information.


  • apiVersion: resource.k8s.io/v1alpha3

  • kind: ResourcePoolStatusRequest

  • metadata (ObjectMeta), required

    Standard object metadata

  • spec (ResourcePoolStatusRequestSpec), required

    Spec defines the filters for which pools to include in the status. The spec is immutable once created.

  • status (ResourcePoolStatusRequestStatus)

    Status is populated by the controller with the calculated pool status. When status is non-nil, the request is considered complete and the entire object becomes immutable.

ResourcePoolStatusRequestSpec

ResourcePoolStatusRequestSpec defines the filters for the pool status request.


  • driver (string), required

    Driver specifies the DRA driver name to filter pools. Only pools from ResourceSlices with this driver will be included. Must be a DNS subdomain (e.g., "gpu.example.com").

  • limit (int32)

    Limit optionally specifies the maximum number of pools to return in the status. If more pools match the filter criteria, the response will be truncated (i.e., len(status.pools) < status.poolCount).

    Default: 100 Minimum: 1 Maximum: 1000

  • poolName (string)

    PoolName optionally filters to a specific pool name. If not specified, all pools from the specified driver are included. When specified, must be a non-empty valid resource pool name (DNS subdomains separated by "/").

ResourcePoolStatusRequestStatus

ResourcePoolStatusRequestStatus contains the calculated pool status information.


  • poolCount (int32), required

    PoolCount is the total number of pools that matched the filter criteria, regardless of truncation. This helps users understand how many pools exist even when the response is truncated. A value of 0 means no pools matched the filter criteria.

  • conditions ([]Condition)

    Patch strategy: merge on key type

    Map: unique values on key type will be kept during a merge

    Conditions provide information about the state of the request. A condition with type=Complete or type=Failed will always be set when the status is populated.

    Known condition types: - "Complete": True when the request has been processed successfully - "Failed": True when the request could not be processed

    Condition contains details for one aspect of the current state of this API Resource.

    • conditions.lastTransitionTime (Time), required

      lastTransitionTime is the last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.

      Time is a wrapper around time.Time which supports correct marshaling to YAML and JSON. Wrappers are provided for many of the factory methods that the time package offers.

    • conditions.message (string), required

      message is a human readable message indicating details about the transition. This may be an empty string.

    • conditions.reason (string), required

      reason contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.

    • conditions.status (string), required

      status of the condition, one of True, False, Unknown.

    • conditions.type (string), required

      type of condition in CamelCase or in foo.example.com/CamelCase.

    • conditions.observedGeneration (int64)

      observedGeneration represents the .metadata.generation that the condition was set based upon. For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.

  • pools ([]PoolStatus)

    Atomic: will be replaced during a merge

    Pools contains the first spec.limit matching pools, sorted by driver then pool name. If len(pools) \< poolCount, the list was truncated. When omitted, no pools matched the request filters.

    PoolStatus contains status information for a single resource pool.

    • pools.driver (string), required

      Driver is the DRA driver name for this pool. Must be a DNS subdomain (e.g., "gpu.example.com").

    • pools.generation (int64), required

      Generation is the pool generation observed across all ResourceSlices in this pool. Only the latest generation is reported. During a generation rollout, if not all slices at the latest generation have been published, the pool is included with a validationError and device counts unset.

    • pools.poolName (string), required

      PoolName is the name of the pool. Must be a valid resource pool name (DNS subdomains separated by "/").

    • pools.allocatedDevices (int32)

      AllocatedDevices is the number of devices currently allocated to claims. A value of 0 means no devices are allocated. May be unset when validationError is set.

    • pools.availableDevices (int32)

      AvailableDevices is the number of devices available for allocation. This equals TotalDevices - AllocatedDevices - UnavailableDevices. A value of 0 means no devices are currently available. May be unset when validationError is set.

    • pools.nodeName (string)

      NodeName is the node this pool is associated with. When omitted, the pool is not associated with a specific node. Must be a valid DNS subdomain name (RFC1123).

    • pools.resourceSliceCount (int32)

      ResourceSliceCount is the number of ResourceSlices that make up this pool. May be unset when validationError is set.

    • pools.totalDevices (int32)

      TotalDevices is the total number of devices in the pool across all slices. A value of 0 means the pool has no devices. May be unset when validationError is set.

    • pools.unavailableDevices (int32)

      UnavailableDevices is the number of devices that are not available due to taints or other conditions, but are not allocated. A value of 0 means all unallocated devices are available. May be unset when validationError is set.

    • pools.validationError (string)

      ValidationError is set when the pool's data could not be fully validated (e.g., incomplete slice publication). When set, device count fields and ResourceSliceCount may be unset.

ResourcePoolStatusRequestList

ResourcePoolStatusRequestList is a collection of ResourcePoolStatusRequests.


  • apiVersion: resource.k8s.io/v1alpha3

  • kind: ResourcePoolStatusRequestList

  • metadata (ListMeta)

    Standard list metadata

  • items ([]ResourcePoolStatusRequest), required

    Items is the list of ResourcePoolStatusRequests.

Operations


get read the specified ResourcePoolStatusRequest

HTTP Request

GET /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}

Parameters

  • name (in path): string, required

    name of the ResourcePoolStatusRequest

  • pretty (in query): string

    pretty

Response

200 (ResourcePoolStatusRequest): OK

401: Unauthorized

get read status of the specified ResourcePoolStatusRequest

HTTP Request

GET /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status

Parameters

  • name (in path): string, required

    name of the ResourcePoolStatusRequest

  • pretty (in query): string

    pretty

Response

200 (ResourcePoolStatusRequest): OK

401: Unauthorized

list list or watch objects of kind ResourcePoolStatusRequest

HTTP Request

GET /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests

Parameters

Response

200 (ResourcePoolStatusRequestList): OK

401: Unauthorized

create create a ResourcePoolStatusRequest

HTTP Request

POST /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests

Parameters

Response

200 (ResourcePoolStatusRequest): OK

201 (ResourcePoolStatusRequest): Created

202 (ResourcePoolStatusRequest): Accepted

401: Unauthorized

update replace the specified ResourcePoolStatusRequest

HTTP Request

PUT /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}

Parameters

Response

200 (ResourcePoolStatusRequest): OK

201 (ResourcePoolStatusRequest): Created

401: Unauthorized

update replace status of the specified ResourcePoolStatusRequest

HTTP Request

PUT /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status

Parameters

Response

200 (ResourcePoolStatusRequest): OK

201 (ResourcePoolStatusRequest): Created

401: Unauthorized

patch partially update the specified ResourcePoolStatusRequest

HTTP Request

PATCH /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}

Parameters

  • name (in path): string, required

    name of the ResourcePoolStatusRequest

  • body: Patch, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • fieldValidation (in query): string

    fieldValidation

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

Response

200 (ResourcePoolStatusRequest): OK

201 (ResourcePoolStatusRequest): Created

401: Unauthorized

patch partially update status of the specified ResourcePoolStatusRequest

HTTP Request

PATCH /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}/status

Parameters

  • name (in path): string, required

    name of the ResourcePoolStatusRequest

  • body: Patch, required

  • dryRun (in query): string

    dryRun

  • fieldManager (in query): string

    fieldManager

  • fieldValidation (in query): string

    fieldValidation

  • force (in query): boolean

    force

  • pretty (in query): string

    pretty

Response

200 (ResourcePoolStatusRequest): OK

201 (ResourcePoolStatusRequest): Created

401: Unauthorized

delete delete a ResourcePoolStatusRequest

HTTP Request

DELETE /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests/{name}

Parameters

Response

200 (ResourcePoolStatusRequest): OK

202 (ResourcePoolStatusRequest): Accepted

401: Unauthorized

deletecollection delete collection of ResourcePoolStatusRequest

HTTP Request

DELETE /apis/resource.k8s.io/v1alpha3/resourcepoolstatusrequests

Parameters

Response

200 (Status): OK

401: Unauthorized


Last modified April 24, 2026 at 2:17 PM PST: Update API resource reference for v1.36.0 (#55505) (d405670c62)

This page is automatically generated.

If you plan to report an issue with this page, mention that the page is auto-generated in your issue description. The fix may need to happen elsewhere in the Kubernetes project.