DRA API: AdminAccess in DeviceRequestAllocationResult

Drivers need to know that because admin access may also grant additional
permissions. The allocator needs to ignore such results when determining which
devices are considered as allocated.

In both cases it is conceptually cleaner to not rely on the content of the
ClaimSpec.
This commit is contained in:
Patrick Ohly
2024-09-04 08:03:22 +02:00
parent 66b3dc1a38
commit f3fef01e79
24 changed files with 495 additions and 208 deletions

View File

@@ -15562,6 +15562,10 @@
"io.k8s.api.resource.v1alpha3.DeviceRequestAllocationResult": {
"description": "DeviceRequestAllocationResult contains the allocation result for one request.",
"properties": {
"adminAccess": {
"description": "AdminAccess is a copy of the AdminAccess value in the request which caused this device to be allocated.\n\nNew allocations are required to have this set. Old allocations made by Kubernetes 1.31 do not have it yet. Clients which want to support Kubernetes 1.31 need to look up the request and retrieve the value from there if this field is not set.",
"type": "boolean"
},
"device": {
"description": "Device references one device instance via its name in the driver's resource pool. It must be a DNS label.",
"type": "string"
@@ -15583,7 +15587,8 @@
"request",
"driver",
"pool",
"device"
"device",
"adminAccess"
],
"type": "object"
},

View File

@@ -526,6 +526,10 @@
"io.k8s.api.resource.v1alpha3.DeviceRequestAllocationResult": {
"description": "DeviceRequestAllocationResult contains the allocation result for one request.",
"properties": {
"adminAccess": {
"description": "AdminAccess is a copy of the AdminAccess value in the request which caused this device to be allocated.\n\nNew allocations are required to have this set. Old allocations made by Kubernetes 1.31 do not have it yet. Clients which want to support Kubernetes 1.31 need to look up the request and retrieve the value from there if this field is not set.",
"type": "boolean"
},
"device": {
"default": "",
"description": "Device references one device instance via its name in the driver's resource pool. It must be a DNS label.",
@@ -551,7 +555,8 @@
"request",
"driver",
"pool",
"device"
"device",
"adminAccess"
],
"type": "object"
},