pulumi-kubernetes 4.19.0a1733937243__py3-none-any.whl → 4.19.0a1733970382__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of pulumi-kubernetes might be problematic. Click here for more details.
- pulumi_kubernetes/__init__.py +36 -0
- pulumi_kubernetes/admissionregistration/v1/_inputs.py +6 -6
- pulumi_kubernetes/admissionregistration/v1/outputs.py +4 -4
- pulumi_kubernetes/admissionregistration/v1alpha1/MutatingAdmissionPolicy.py +214 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/MutatingAdmissionPolicyBinding.py +222 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/MutatingAdmissionPolicyBindingList.py +215 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/MutatingAdmissionPolicyBindingPatch.py +234 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/MutatingAdmissionPolicyList.py +215 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/MutatingAdmissionPolicyPatch.py +226 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/ValidatingAdmissionPolicyBinding.py +0 -8
- pulumi_kubernetes/admissionregistration/v1alpha1/ValidatingAdmissionPolicyBindingPatch.py +0 -8
- pulumi_kubernetes/admissionregistration/v1alpha1/__init__.py +6 -0
- pulumi_kubernetes/admissionregistration/v1alpha1/_inputs.py +1818 -315
- pulumi_kubernetes/admissionregistration/v1alpha1/outputs.py +1365 -246
- pulumi_kubernetes/admissionregistration/v1beta1/_inputs.py +6 -6
- pulumi_kubernetes/admissionregistration/v1beta1/outputs.py +4 -4
- pulumi_kubernetes/apiextensions/v1/_inputs.py +6 -6
- pulumi_kubernetes/apiextensions/v1/outputs.py +4 -4
- pulumi_kubernetes/apps/v1/_inputs.py +6 -6
- pulumi_kubernetes/apps/v1/outputs.py +4 -4
- pulumi_kubernetes/autoscaling/v2/_inputs.py +15 -15
- pulumi_kubernetes/autoscaling/v2/outputs.py +12 -12
- pulumi_kubernetes/batch/v1/_inputs.py +6 -6
- pulumi_kubernetes/batch/v1/outputs.py +4 -4
- pulumi_kubernetes/coordination/__init__.py +3 -0
- pulumi_kubernetes/coordination/v1alpha1/LeaseCandidate.py +2 -0
- pulumi_kubernetes/coordination/v1alpha1/LeaseCandidatePatch.py +2 -0
- pulumi_kubernetes/coordination/v1alpha2/LeaseCandidate.py +216 -0
- pulumi_kubernetes/coordination/v1alpha2/LeaseCandidateList.py +215 -0
- pulumi_kubernetes/coordination/v1alpha2/LeaseCandidatePatch.py +228 -0
- pulumi_kubernetes/coordination/v1alpha2/__init__.py +12 -0
- pulumi_kubernetes/coordination/v1alpha2/_inputs.py +393 -0
- pulumi_kubernetes/coordination/v1alpha2/outputs.py +313 -0
- pulumi_kubernetes/core/v1/Binding.py +2 -2
- pulumi_kubernetes/core/v1/BindingPatch.py +2 -2
- pulumi_kubernetes/core/v1/ServiceAccount.py +4 -4
- pulumi_kubernetes/core/v1/ServiceAccountPatch.py +4 -4
- pulumi_kubernetes/core/v1/_inputs.py +564 -313
- pulumi_kubernetes/core/v1/outputs.py +418 -230
- pulumi_kubernetes/flowcontrol/v1beta3/_inputs.py +12 -12
- pulumi_kubernetes/flowcontrol/v1beta3/outputs.py +8 -8
- pulumi_kubernetes/pulumi-plugin.json +1 -1
- pulumi_kubernetes/resource/__init__.py +3 -0
- pulumi_kubernetes/resource/v1alpha1/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1alpha1/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1alpha1/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceSlice.py +1 -1
- pulumi_kubernetes/resource/v1alpha2/ResourceSlicePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/DeviceClass.py +2 -0
- pulumi_kubernetes/resource/v1alpha3/DeviceClassPatch.py +2 -0
- pulumi_kubernetes/resource/v1alpha3/ResourceClaim.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceClaimPatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplate.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceClaimTemplatePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/ResourceSlice.py +8 -8
- pulumi_kubernetes/resource/v1alpha3/ResourceSliceList.py +245 -0
- pulumi_kubernetes/resource/v1alpha3/ResourceSlicePatch.py +1 -1
- pulumi_kubernetes/resource/v1alpha3/__init__.py +1 -0
- pulumi_kubernetes/resource/v1alpha3/_inputs.py +455 -7
- pulumi_kubernetes/resource/v1alpha3/outputs.py +592 -5
- pulumi_kubernetes/resource/v1beta1/DeviceClass.py +237 -0
- pulumi_kubernetes/resource/v1beta1/DeviceClassList.py +215 -0
- pulumi_kubernetes/resource/v1beta1/DeviceClassPatch.py +248 -0
- pulumi_kubernetes/resource/v1beta1/ResourceClaim.py +232 -0
- pulumi_kubernetes/resource/v1beta1/ResourceClaimList.py +216 -0
- pulumi_kubernetes/resource/v1beta1/ResourceClaimPatch.py +243 -0
- pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplate.py +229 -0
- pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplateList.py +215 -0
- pulumi_kubernetes/resource/v1beta1/ResourceClaimTemplatePatch.py +240 -0
- pulumi_kubernetes/resource/v1beta1/ResourceSlice.py +246 -0
- pulumi_kubernetes/resource/v1beta1/ResourceSliceList.py +216 -0
- pulumi_kubernetes/resource/v1beta1/ResourceSlicePatch.py +257 -0
- pulumi_kubernetes/resource/v1beta1/__init__.py +21 -0
- pulumi_kubernetes/resource/v1beta1/_inputs.py +3867 -0
- pulumi_kubernetes/resource/v1beta1/outputs.py +3334 -0
- pulumi_kubernetes/storage/v1/_inputs.py +4 -4
- pulumi_kubernetes/storage/v1/outputs.py +4 -4
- pulumi_kubernetes/yaml/yaml.py +90 -0
- {pulumi_kubernetes-4.19.0a1733937243.dist-info → pulumi_kubernetes-4.19.0a1733970382.dist-info}/METADATA +1 -1
- {pulumi_kubernetes-4.19.0a1733937243.dist-info → pulumi_kubernetes-4.19.0a1733970382.dist-info}/RECORD +87 -59
- {pulumi_kubernetes-4.19.0a1733937243.dist-info → pulumi_kubernetes-4.19.0a1733970382.dist-info}/WHEEL +0 -0
- {pulumi_kubernetes-4.19.0a1733937243.dist-info → pulumi_kubernetes-4.19.0a1733970382.dist-info}/top_level.txt +0 -0
|
@@ -17,6 +17,8 @@ from ... import core as _core
|
|
|
17
17
|
from ... import meta as _meta
|
|
18
18
|
|
|
19
19
|
__all__ = [
|
|
20
|
+
'AllocatedDeviceStatusArgs',
|
|
21
|
+
'AllocatedDeviceStatusArgsDict',
|
|
20
22
|
'AllocationResultArgs',
|
|
21
23
|
'AllocationResultArgsDict',
|
|
22
24
|
'BasicDevicePatchArgs',
|
|
@@ -69,6 +71,8 @@ __all__ = [
|
|
|
69
71
|
'DeviceSelectorArgsDict',
|
|
70
72
|
'DeviceArgs',
|
|
71
73
|
'DeviceArgsDict',
|
|
74
|
+
'NetworkDeviceDataArgs',
|
|
75
|
+
'NetworkDeviceDataArgsDict',
|
|
72
76
|
'OpaqueDeviceConfigurationPatchArgs',
|
|
73
77
|
'OpaqueDeviceConfigurationPatchArgsDict',
|
|
74
78
|
'OpaqueDeviceConfigurationArgs',
|
|
@@ -107,10 +111,163 @@ __all__ = [
|
|
|
107
111
|
'ResourceSliceSpecPatchArgsDict',
|
|
108
112
|
'ResourceSliceSpecArgs',
|
|
109
113
|
'ResourceSliceSpecArgsDict',
|
|
114
|
+
'ResourceSliceArgs',
|
|
115
|
+
'ResourceSliceArgsDict',
|
|
110
116
|
]
|
|
111
117
|
|
|
112
118
|
MYPY = False
|
|
113
119
|
|
|
120
|
+
if not MYPY:
|
|
121
|
+
class AllocatedDeviceStatusArgsDict(TypedDict):
|
|
122
|
+
"""
|
|
123
|
+
AllocatedDeviceStatus contains the status of an allocated device, if the driver chooses to report it. This may include driver-specific information.
|
|
124
|
+
"""
|
|
125
|
+
device: pulumi.Input[str]
|
|
126
|
+
"""
|
|
127
|
+
Device references one device instance via its name in the driver's resource pool. It must be a DNS label.
|
|
128
|
+
"""
|
|
129
|
+
driver: pulumi.Input[str]
|
|
130
|
+
"""
|
|
131
|
+
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.
|
|
132
|
+
|
|
133
|
+
Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
|
|
134
|
+
"""
|
|
135
|
+
pool: pulumi.Input[str]
|
|
136
|
+
"""
|
|
137
|
+
This name together with the driver name and the device name field identify which device was allocated (`<driver name>/<pool name>/<device name>`).
|
|
138
|
+
|
|
139
|
+
Must not be longer than 253 characters and may contain one or more DNS sub-domains separated by slashes.
|
|
140
|
+
"""
|
|
141
|
+
conditions: NotRequired[pulumi.Input[Sequence[pulumi.Input['_meta.v1.ConditionArgsDict']]]]
|
|
142
|
+
"""
|
|
143
|
+
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.
|
|
144
|
+
"""
|
|
145
|
+
data: NotRequired[Any]
|
|
146
|
+
"""
|
|
147
|
+
Data contains arbitrary driver-specific data.
|
|
148
|
+
|
|
149
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
150
|
+
"""
|
|
151
|
+
network_data: NotRequired[pulumi.Input['NetworkDeviceDataArgsDict']]
|
|
152
|
+
"""
|
|
153
|
+
NetworkData contains network-related information specific to the device.
|
|
154
|
+
"""
|
|
155
|
+
elif False:
|
|
156
|
+
AllocatedDeviceStatusArgsDict: TypeAlias = Mapping[str, Any]
|
|
157
|
+
|
|
158
|
+
@pulumi.input_type
|
|
159
|
+
class AllocatedDeviceStatusArgs:
|
|
160
|
+
def __init__(__self__, *,
|
|
161
|
+
device: pulumi.Input[str],
|
|
162
|
+
driver: pulumi.Input[str],
|
|
163
|
+
pool: pulumi.Input[str],
|
|
164
|
+
conditions: Optional[pulumi.Input[Sequence[pulumi.Input['_meta.v1.ConditionArgs']]]] = None,
|
|
165
|
+
data: Optional[Any] = None,
|
|
166
|
+
network_data: Optional[pulumi.Input['NetworkDeviceDataArgs']] = None):
|
|
167
|
+
"""
|
|
168
|
+
AllocatedDeviceStatus contains the status of an allocated device, if the driver chooses to report it. This may include driver-specific information.
|
|
169
|
+
:param pulumi.Input[str] device: Device references one device instance via its name in the driver's resource pool. It must be a DNS label.
|
|
170
|
+
:param pulumi.Input[str] driver: 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.
|
|
171
|
+
|
|
172
|
+
Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
|
|
173
|
+
:param pulumi.Input[str] pool: This name together with the driver name and the device name field identify which device was allocated (`<driver name>/<pool name>/<device name>`).
|
|
174
|
+
|
|
175
|
+
Must not be longer than 253 characters and may contain one or more DNS sub-domains separated by slashes.
|
|
176
|
+
:param pulumi.Input[Sequence[pulumi.Input['_meta.v1.ConditionArgs']]] conditions: 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.
|
|
177
|
+
:param Any data: Data contains arbitrary driver-specific data.
|
|
178
|
+
|
|
179
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
180
|
+
:param pulumi.Input['NetworkDeviceDataArgs'] network_data: NetworkData contains network-related information specific to the device.
|
|
181
|
+
"""
|
|
182
|
+
pulumi.set(__self__, "device", device)
|
|
183
|
+
pulumi.set(__self__, "driver", driver)
|
|
184
|
+
pulumi.set(__self__, "pool", pool)
|
|
185
|
+
if conditions is not None:
|
|
186
|
+
pulumi.set(__self__, "conditions", conditions)
|
|
187
|
+
if data is not None:
|
|
188
|
+
pulumi.set(__self__, "data", data)
|
|
189
|
+
if network_data is not None:
|
|
190
|
+
pulumi.set(__self__, "network_data", network_data)
|
|
191
|
+
|
|
192
|
+
@property
|
|
193
|
+
@pulumi.getter
|
|
194
|
+
def device(self) -> pulumi.Input[str]:
|
|
195
|
+
"""
|
|
196
|
+
Device references one device instance via its name in the driver's resource pool. It must be a DNS label.
|
|
197
|
+
"""
|
|
198
|
+
return pulumi.get(self, "device")
|
|
199
|
+
|
|
200
|
+
@device.setter
|
|
201
|
+
def device(self, value: pulumi.Input[str]):
|
|
202
|
+
pulumi.set(self, "device", value)
|
|
203
|
+
|
|
204
|
+
@property
|
|
205
|
+
@pulumi.getter
|
|
206
|
+
def driver(self) -> pulumi.Input[str]:
|
|
207
|
+
"""
|
|
208
|
+
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.
|
|
209
|
+
|
|
210
|
+
Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
|
|
211
|
+
"""
|
|
212
|
+
return pulumi.get(self, "driver")
|
|
213
|
+
|
|
214
|
+
@driver.setter
|
|
215
|
+
def driver(self, value: pulumi.Input[str]):
|
|
216
|
+
pulumi.set(self, "driver", value)
|
|
217
|
+
|
|
218
|
+
@property
|
|
219
|
+
@pulumi.getter
|
|
220
|
+
def pool(self) -> pulumi.Input[str]:
|
|
221
|
+
"""
|
|
222
|
+
This name together with the driver name and the device name field identify which device was allocated (`<driver name>/<pool name>/<device name>`).
|
|
223
|
+
|
|
224
|
+
Must not be longer than 253 characters and may contain one or more DNS sub-domains separated by slashes.
|
|
225
|
+
"""
|
|
226
|
+
return pulumi.get(self, "pool")
|
|
227
|
+
|
|
228
|
+
@pool.setter
|
|
229
|
+
def pool(self, value: pulumi.Input[str]):
|
|
230
|
+
pulumi.set(self, "pool", value)
|
|
231
|
+
|
|
232
|
+
@property
|
|
233
|
+
@pulumi.getter
|
|
234
|
+
def conditions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['_meta.v1.ConditionArgs']]]]:
|
|
235
|
+
"""
|
|
236
|
+
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.
|
|
237
|
+
"""
|
|
238
|
+
return pulumi.get(self, "conditions")
|
|
239
|
+
|
|
240
|
+
@conditions.setter
|
|
241
|
+
def conditions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['_meta.v1.ConditionArgs']]]]):
|
|
242
|
+
pulumi.set(self, "conditions", value)
|
|
243
|
+
|
|
244
|
+
@property
|
|
245
|
+
@pulumi.getter
|
|
246
|
+
def data(self) -> Optional[Any]:
|
|
247
|
+
"""
|
|
248
|
+
Data contains arbitrary driver-specific data.
|
|
249
|
+
|
|
250
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
251
|
+
"""
|
|
252
|
+
return pulumi.get(self, "data")
|
|
253
|
+
|
|
254
|
+
@data.setter
|
|
255
|
+
def data(self, value: Optional[Any]):
|
|
256
|
+
pulumi.set(self, "data", value)
|
|
257
|
+
|
|
258
|
+
@property
|
|
259
|
+
@pulumi.getter(name="networkData")
|
|
260
|
+
def network_data(self) -> Optional[pulumi.Input['NetworkDeviceDataArgs']]:
|
|
261
|
+
"""
|
|
262
|
+
NetworkData contains network-related information specific to the device.
|
|
263
|
+
"""
|
|
264
|
+
return pulumi.get(self, "network_data")
|
|
265
|
+
|
|
266
|
+
@network_data.setter
|
|
267
|
+
def network_data(self, value: Optional[pulumi.Input['NetworkDeviceDataArgs']]):
|
|
268
|
+
pulumi.set(self, "network_data", value)
|
|
269
|
+
|
|
270
|
+
|
|
114
271
|
if not MYPY:
|
|
115
272
|
class AllocationResultArgsDict(TypedDict):
|
|
116
273
|
"""
|
|
@@ -369,6 +526,8 @@ if not MYPY:
|
|
|
369
526
|
For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example:
|
|
370
527
|
|
|
371
528
|
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
|
|
529
|
+
|
|
530
|
+
The length of the expression must be smaller or equal to 10 Ki. The cost of evaluating it is also limited based on the estimated number of logical steps.
|
|
372
531
|
"""
|
|
373
532
|
elif False:
|
|
374
533
|
CELDeviceSelectorPatchArgsDict: TypeAlias = Mapping[str, Any]
|
|
@@ -406,6 +565,8 @@ class CELDeviceSelectorPatchArgs:
|
|
|
406
565
|
For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example:
|
|
407
566
|
|
|
408
567
|
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
|
|
568
|
+
|
|
569
|
+
The length of the expression must be smaller or equal to 10 Ki. The cost of evaluating it is also limited based on the estimated number of logical steps.
|
|
409
570
|
"""
|
|
410
571
|
if expression is not None:
|
|
411
572
|
pulumi.set(__self__, "expression", expression)
|
|
@@ -441,6 +602,8 @@ class CELDeviceSelectorPatchArgs:
|
|
|
441
602
|
For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example:
|
|
442
603
|
|
|
443
604
|
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
|
|
605
|
+
|
|
606
|
+
The length of the expression must be smaller or equal to 10 Ki. The cost of evaluating it is also limited based on the estimated number of logical steps.
|
|
444
607
|
"""
|
|
445
608
|
return pulumi.get(self, "expression")
|
|
446
609
|
|
|
@@ -483,6 +646,8 @@ if not MYPY:
|
|
|
483
646
|
For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example:
|
|
484
647
|
|
|
485
648
|
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
|
|
649
|
+
|
|
650
|
+
The length of the expression must be smaller or equal to 10 Ki. The cost of evaluating it is also limited based on the estimated number of logical steps.
|
|
486
651
|
"""
|
|
487
652
|
elif False:
|
|
488
653
|
CELDeviceSelectorArgsDict: TypeAlias = Mapping[str, Any]
|
|
@@ -520,6 +685,8 @@ class CELDeviceSelectorArgs:
|
|
|
520
685
|
For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example:
|
|
521
686
|
|
|
522
687
|
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
|
|
688
|
+
|
|
689
|
+
The length of the expression must be smaller or equal to 10 Ki. The cost of evaluating it is also limited based on the estimated number of logical steps.
|
|
523
690
|
"""
|
|
524
691
|
pulumi.set(__self__, "expression", expression)
|
|
525
692
|
|
|
@@ -554,6 +721,8 @@ class CELDeviceSelectorArgs:
|
|
|
554
721
|
For ease of use, the cel.bind() function is enabled, and can be used to simplify expressions that access multiple attributes with the same domain. For example:
|
|
555
722
|
|
|
556
723
|
cel.bind(dra, device.attributes["dra.example.com"], dra.someBool && dra.anotherBool)
|
|
724
|
+
|
|
725
|
+
The length of the expression must be smaller or equal to 10 Ki. The cost of evaluating it is also limited based on the estimated number of logical steps.
|
|
557
726
|
"""
|
|
558
727
|
return pulumi.get(self, "expression")
|
|
559
728
|
|
|
@@ -1647,6 +1816,12 @@ if not MYPY:
|
|
|
1647
1816
|
"""
|
|
1648
1817
|
Request is the name of the request in the claim which caused this device to be allocated. Multiple devices may have been allocated per request.
|
|
1649
1818
|
"""
|
|
1819
|
+
admin_access: NotRequired[pulumi.Input[bool]]
|
|
1820
|
+
"""
|
|
1821
|
+
AdminAccess indicates that this device was allocated for administrative access. See the corresponding request field for a definition of mode.
|
|
1822
|
+
|
|
1823
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1824
|
+
"""
|
|
1650
1825
|
elif False:
|
|
1651
1826
|
DeviceRequestAllocationResultArgsDict: TypeAlias = Mapping[str, Any]
|
|
1652
1827
|
|
|
@@ -1656,7 +1831,8 @@ class DeviceRequestAllocationResultArgs:
|
|
|
1656
1831
|
device: pulumi.Input[str],
|
|
1657
1832
|
driver: pulumi.Input[str],
|
|
1658
1833
|
pool: pulumi.Input[str],
|
|
1659
|
-
request: pulumi.Input[str]
|
|
1834
|
+
request: pulumi.Input[str],
|
|
1835
|
+
admin_access: Optional[pulumi.Input[bool]] = None):
|
|
1660
1836
|
"""
|
|
1661
1837
|
DeviceRequestAllocationResult contains the allocation result for one request.
|
|
1662
1838
|
:param pulumi.Input[str] device: Device references one device instance via its name in the driver's resource pool. It must be a DNS label.
|
|
@@ -1667,11 +1843,16 @@ class DeviceRequestAllocationResultArgs:
|
|
|
1667
1843
|
|
|
1668
1844
|
Must not be longer than 253 characters and may contain one or more DNS sub-domains separated by slashes.
|
|
1669
1845
|
:param pulumi.Input[str] request: Request is the name of the request in the claim which caused this device to be allocated. Multiple devices may have been allocated per request.
|
|
1846
|
+
:param pulumi.Input[bool] admin_access: AdminAccess indicates that this device was allocated for administrative access. See the corresponding request field for a definition of mode.
|
|
1847
|
+
|
|
1848
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1670
1849
|
"""
|
|
1671
1850
|
pulumi.set(__self__, "device", device)
|
|
1672
1851
|
pulumi.set(__self__, "driver", driver)
|
|
1673
1852
|
pulumi.set(__self__, "pool", pool)
|
|
1674
1853
|
pulumi.set(__self__, "request", request)
|
|
1854
|
+
if admin_access is not None:
|
|
1855
|
+
pulumi.set(__self__, "admin_access", admin_access)
|
|
1675
1856
|
|
|
1676
1857
|
@property
|
|
1677
1858
|
@pulumi.getter
|
|
@@ -1725,6 +1906,20 @@ class DeviceRequestAllocationResultArgs:
|
|
|
1725
1906
|
def request(self, value: pulumi.Input[str]):
|
|
1726
1907
|
pulumi.set(self, "request", value)
|
|
1727
1908
|
|
|
1909
|
+
@property
|
|
1910
|
+
@pulumi.getter(name="adminAccess")
|
|
1911
|
+
def admin_access(self) -> Optional[pulumi.Input[bool]]:
|
|
1912
|
+
"""
|
|
1913
|
+
AdminAccess indicates that this device was allocated for administrative access. See the corresponding request field for a definition of mode.
|
|
1914
|
+
|
|
1915
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1916
|
+
"""
|
|
1917
|
+
return pulumi.get(self, "admin_access")
|
|
1918
|
+
|
|
1919
|
+
@admin_access.setter
|
|
1920
|
+
def admin_access(self, value: Optional[pulumi.Input[bool]]):
|
|
1921
|
+
pulumi.set(self, "admin_access", value)
|
|
1922
|
+
|
|
1728
1923
|
|
|
1729
1924
|
if not MYPY:
|
|
1730
1925
|
class DeviceRequestPatchArgsDict(TypedDict):
|
|
@@ -1736,6 +1931,8 @@ if not MYPY:
|
|
|
1736
1931
|
admin_access: NotRequired[pulumi.Input[bool]]
|
|
1737
1932
|
"""
|
|
1738
1933
|
AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations.
|
|
1934
|
+
|
|
1935
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1739
1936
|
"""
|
|
1740
1937
|
allocation_mode: NotRequired[pulumi.Input[str]]
|
|
1741
1938
|
"""
|
|
@@ -1792,6 +1989,8 @@ class DeviceRequestPatchArgs:
|
|
|
1792
1989
|
|
|
1793
1990
|
A DeviceClassName is currently required. Clients must check that it is indeed set. It's absence indicates that something changed in a way that is not supported by the client yet, in which case it must refuse to handle the request.
|
|
1794
1991
|
:param pulumi.Input[bool] admin_access: AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations.
|
|
1992
|
+
|
|
1993
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1795
1994
|
:param pulumi.Input[str] allocation_mode: AllocationMode and its related fields define how devices are allocated to satisfy this request. Supported values are:
|
|
1796
1995
|
|
|
1797
1996
|
- ExactCount: This request is for a specific number of devices.
|
|
@@ -1834,6 +2033,8 @@ class DeviceRequestPatchArgs:
|
|
|
1834
2033
|
def admin_access(self) -> Optional[pulumi.Input[bool]]:
|
|
1835
2034
|
"""
|
|
1836
2035
|
AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations.
|
|
2036
|
+
|
|
2037
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1837
2038
|
"""
|
|
1838
2039
|
return pulumi.get(self, "admin_access")
|
|
1839
2040
|
|
|
@@ -1944,6 +2145,8 @@ if not MYPY:
|
|
|
1944
2145
|
admin_access: NotRequired[pulumi.Input[bool]]
|
|
1945
2146
|
"""
|
|
1946
2147
|
AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations.
|
|
2148
|
+
|
|
2149
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1947
2150
|
"""
|
|
1948
2151
|
allocation_mode: NotRequired[pulumi.Input[str]]
|
|
1949
2152
|
"""
|
|
@@ -1994,6 +2197,8 @@ class DeviceRequestArgs:
|
|
|
1994
2197
|
|
|
1995
2198
|
Must be a DNS label.
|
|
1996
2199
|
:param pulumi.Input[bool] admin_access: AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations.
|
|
2200
|
+
|
|
2201
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
1997
2202
|
:param pulumi.Input[str] allocation_mode: AllocationMode and its related fields define how devices are allocated to satisfy this request. Supported values are:
|
|
1998
2203
|
|
|
1999
2204
|
- ExactCount: This request is for a specific number of devices.
|
|
@@ -2056,6 +2261,8 @@ class DeviceRequestArgs:
|
|
|
2056
2261
|
def admin_access(self) -> Optional[pulumi.Input[bool]]:
|
|
2057
2262
|
"""
|
|
2058
2263
|
AdminAccess indicates that this is a claim for administrative access to the device(s). Claims with AdminAccess are expected to be used for monitoring or other management services for a device. They ignore all ordinary claims to the device with respect to access modes and any resource allocations.
|
|
2264
|
+
|
|
2265
|
+
This is an alpha field and requires enabling the DRAAdminAccess feature gate. Admin access is disabled if this field is unset or set to false, otherwise it is enabled.
|
|
2059
2266
|
"""
|
|
2060
2267
|
return pulumi.get(self, "admin_access")
|
|
2061
2268
|
|
|
@@ -2239,6 +2446,94 @@ class DeviceArgs:
|
|
|
2239
2446
|
pulumi.set(self, "basic", value)
|
|
2240
2447
|
|
|
2241
2448
|
|
|
2449
|
+
if not MYPY:
|
|
2450
|
+
class NetworkDeviceDataArgsDict(TypedDict):
|
|
2451
|
+
"""
|
|
2452
|
+
NetworkDeviceData provides network-related details for the allocated device. This information may be filled by drivers or other components to configure or identify the device within a network context.
|
|
2453
|
+
"""
|
|
2454
|
+
hardware_address: NotRequired[pulumi.Input[str]]
|
|
2455
|
+
"""
|
|
2456
|
+
HardwareAddress represents the hardware address (e.g. MAC Address) of the device's network interface.
|
|
2457
|
+
|
|
2458
|
+
Must not be longer than 128 characters.
|
|
2459
|
+
"""
|
|
2460
|
+
interface_name: NotRequired[pulumi.Input[str]]
|
|
2461
|
+
"""
|
|
2462
|
+
InterfaceName specifies the name of the network interface associated with the allocated device. This might be the name of a physical or virtual network interface being configured in the pod.
|
|
2463
|
+
|
|
2464
|
+
Must not be longer than 256 characters.
|
|
2465
|
+
"""
|
|
2466
|
+
ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
|
|
2467
|
+
"""
|
|
2468
|
+
IPs lists the network addresses assigned to the device's network interface. This can include both IPv4 and IPv6 addresses. The IPs are in the CIDR notation, which includes both the address and the associated subnet mask. e.g.: "192.0.2.5/24" for IPv4 and "2001:db8::5/64" for IPv6.
|
|
2469
|
+
"""
|
|
2470
|
+
elif False:
|
|
2471
|
+
NetworkDeviceDataArgsDict: TypeAlias = Mapping[str, Any]
|
|
2472
|
+
|
|
2473
|
+
@pulumi.input_type
|
|
2474
|
+
class NetworkDeviceDataArgs:
|
|
2475
|
+
def __init__(__self__, *,
|
|
2476
|
+
hardware_address: Optional[pulumi.Input[str]] = None,
|
|
2477
|
+
interface_name: Optional[pulumi.Input[str]] = None,
|
|
2478
|
+
ips: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None):
|
|
2479
|
+
"""
|
|
2480
|
+
NetworkDeviceData provides network-related details for the allocated device. This information may be filled by drivers or other components to configure or identify the device within a network context.
|
|
2481
|
+
:param pulumi.Input[str] hardware_address: HardwareAddress represents the hardware address (e.g. MAC Address) of the device's network interface.
|
|
2482
|
+
|
|
2483
|
+
Must not be longer than 128 characters.
|
|
2484
|
+
:param pulumi.Input[str] interface_name: InterfaceName specifies the name of the network interface associated with the allocated device. This might be the name of a physical or virtual network interface being configured in the pod.
|
|
2485
|
+
|
|
2486
|
+
Must not be longer than 256 characters.
|
|
2487
|
+
:param pulumi.Input[Sequence[pulumi.Input[str]]] ips: IPs lists the network addresses assigned to the device's network interface. This can include both IPv4 and IPv6 addresses. The IPs are in the CIDR notation, which includes both the address and the associated subnet mask. e.g.: "192.0.2.5/24" for IPv4 and "2001:db8::5/64" for IPv6.
|
|
2488
|
+
"""
|
|
2489
|
+
if hardware_address is not None:
|
|
2490
|
+
pulumi.set(__self__, "hardware_address", hardware_address)
|
|
2491
|
+
if interface_name is not None:
|
|
2492
|
+
pulumi.set(__self__, "interface_name", interface_name)
|
|
2493
|
+
if ips is not None:
|
|
2494
|
+
pulumi.set(__self__, "ips", ips)
|
|
2495
|
+
|
|
2496
|
+
@property
|
|
2497
|
+
@pulumi.getter(name="hardwareAddress")
|
|
2498
|
+
def hardware_address(self) -> Optional[pulumi.Input[str]]:
|
|
2499
|
+
"""
|
|
2500
|
+
HardwareAddress represents the hardware address (e.g. MAC Address) of the device's network interface.
|
|
2501
|
+
|
|
2502
|
+
Must not be longer than 128 characters.
|
|
2503
|
+
"""
|
|
2504
|
+
return pulumi.get(self, "hardware_address")
|
|
2505
|
+
|
|
2506
|
+
@hardware_address.setter
|
|
2507
|
+
def hardware_address(self, value: Optional[pulumi.Input[str]]):
|
|
2508
|
+
pulumi.set(self, "hardware_address", value)
|
|
2509
|
+
|
|
2510
|
+
@property
|
|
2511
|
+
@pulumi.getter(name="interfaceName")
|
|
2512
|
+
def interface_name(self) -> Optional[pulumi.Input[str]]:
|
|
2513
|
+
"""
|
|
2514
|
+
InterfaceName specifies the name of the network interface associated with the allocated device. This might be the name of a physical or virtual network interface being configured in the pod.
|
|
2515
|
+
|
|
2516
|
+
Must not be longer than 256 characters.
|
|
2517
|
+
"""
|
|
2518
|
+
return pulumi.get(self, "interface_name")
|
|
2519
|
+
|
|
2520
|
+
@interface_name.setter
|
|
2521
|
+
def interface_name(self, value: Optional[pulumi.Input[str]]):
|
|
2522
|
+
pulumi.set(self, "interface_name", value)
|
|
2523
|
+
|
|
2524
|
+
@property
|
|
2525
|
+
@pulumi.getter
|
|
2526
|
+
def ips(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
|
|
2527
|
+
"""
|
|
2528
|
+
IPs lists the network addresses assigned to the device's network interface. This can include both IPv4 and IPv6 addresses. The IPs are in the CIDR notation, which includes both the address and the associated subnet mask. e.g.: "192.0.2.5/24" for IPv4 and "2001:db8::5/64" for IPv6.
|
|
2529
|
+
"""
|
|
2530
|
+
return pulumi.get(self, "ips")
|
|
2531
|
+
|
|
2532
|
+
@ips.setter
|
|
2533
|
+
def ips(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
|
|
2534
|
+
pulumi.set(self, "ips", value)
|
|
2535
|
+
|
|
2536
|
+
|
|
2242
2537
|
if not MYPY:
|
|
2243
2538
|
class OpaqueDeviceConfigurationPatchArgsDict(TypedDict):
|
|
2244
2539
|
"""
|
|
@@ -2255,6 +2550,8 @@ if not MYPY:
|
|
|
2255
2550
|
parameters: NotRequired[Any]
|
|
2256
2551
|
"""
|
|
2257
2552
|
Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.
|
|
2553
|
+
|
|
2554
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
2258
2555
|
"""
|
|
2259
2556
|
elif False:
|
|
2260
2557
|
OpaqueDeviceConfigurationPatchArgsDict: TypeAlias = Mapping[str, Any]
|
|
@@ -2272,6 +2569,8 @@ class OpaqueDeviceConfigurationPatchArgs:
|
|
|
2272
2569
|
|
|
2273
2570
|
Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
|
|
2274
2571
|
:param Any parameters: Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.
|
|
2572
|
+
|
|
2573
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
2275
2574
|
"""
|
|
2276
2575
|
if driver is not None:
|
|
2277
2576
|
pulumi.set(__self__, "driver", driver)
|
|
@@ -2299,6 +2598,8 @@ class OpaqueDeviceConfigurationPatchArgs:
|
|
|
2299
2598
|
def parameters(self) -> Optional[Any]:
|
|
2300
2599
|
"""
|
|
2301
2600
|
Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.
|
|
2601
|
+
|
|
2602
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
2302
2603
|
"""
|
|
2303
2604
|
return pulumi.get(self, "parameters")
|
|
2304
2605
|
|
|
@@ -2323,6 +2624,8 @@ if not MYPY:
|
|
|
2323
2624
|
parameters: Any
|
|
2324
2625
|
"""
|
|
2325
2626
|
Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.
|
|
2627
|
+
|
|
2628
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
2326
2629
|
"""
|
|
2327
2630
|
elif False:
|
|
2328
2631
|
OpaqueDeviceConfigurationArgsDict: TypeAlias = Mapping[str, Any]
|
|
@@ -2340,6 +2643,8 @@ class OpaqueDeviceConfigurationArgs:
|
|
|
2340
2643
|
|
|
2341
2644
|
Must be a DNS subdomain and should end with a DNS domain owned by the vendor of the driver.
|
|
2342
2645
|
:param Any parameters: Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.
|
|
2646
|
+
|
|
2647
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
2343
2648
|
"""
|
|
2344
2649
|
pulumi.set(__self__, "driver", driver)
|
|
2345
2650
|
pulumi.set(__self__, "parameters", parameters)
|
|
@@ -2365,6 +2670,8 @@ class OpaqueDeviceConfigurationArgs:
|
|
|
2365
2670
|
def parameters(self) -> Any:
|
|
2366
2671
|
"""
|
|
2367
2672
|
Parameters can contain arbitrary data. It is the responsibility of the driver developer to handle validation and versioning. Typically this includes self-identification and a version ("kind" + "apiVersion" for Kubernetes types), with conversion between different versions.
|
|
2673
|
+
|
|
2674
|
+
The length of the raw data must be smaller or equal to 10 Ki.
|
|
2368
2675
|
"""
|
|
2369
2676
|
return pulumi.get(self, "parameters")
|
|
2370
2677
|
|
|
@@ -2959,6 +3266,10 @@ if not MYPY:
|
|
|
2959
3266
|
|
|
2960
3267
|
This is an alpha field and requires enabling the DRAControlPlaneController feature gate.
|
|
2961
3268
|
"""
|
|
3269
|
+
devices: NotRequired[pulumi.Input[Sequence[pulumi.Input['AllocatedDeviceStatusArgsDict']]]]
|
|
3270
|
+
"""
|
|
3271
|
+
Devices contains the status of each device allocated for this claim, as reported by the driver. This can include driver-specific information. Entries are owned by their respective drivers.
|
|
3272
|
+
"""
|
|
2962
3273
|
reserved_for: NotRequired[pulumi.Input[Sequence[pulumi.Input['ResourceClaimConsumerReferenceArgsDict']]]]
|
|
2963
3274
|
"""
|
|
2964
3275
|
ReservedFor indicates which entities are currently allowed to use the claim. A Pod which references a ResourceClaim which is not reserved for that Pod will not be started. A claim that is in use or might be in use because it has been reserved must not get deallocated.
|
|
@@ -2977,6 +3288,7 @@ class ResourceClaimStatusArgs:
|
|
|
2977
3288
|
def __init__(__self__, *,
|
|
2978
3289
|
allocation: Optional[pulumi.Input['AllocationResultArgs']] = None,
|
|
2979
3290
|
deallocation_requested: Optional[pulumi.Input[bool]] = None,
|
|
3291
|
+
devices: Optional[pulumi.Input[Sequence[pulumi.Input['AllocatedDeviceStatusArgs']]]] = None,
|
|
2980
3292
|
reserved_for: Optional[pulumi.Input[Sequence[pulumi.Input['ResourceClaimConsumerReferenceArgs']]]] = None):
|
|
2981
3293
|
"""
|
|
2982
3294
|
ResourceClaimStatus tracks whether the resource has been allocated and what the result of that was.
|
|
@@ -2986,6 +3298,7 @@ class ResourceClaimStatusArgs:
|
|
|
2986
3298
|
This is only used if the claim needs to be deallocated by a DRA driver. That driver then must deallocate this claim and reset the field together with clearing the Allocation field.
|
|
2987
3299
|
|
|
2988
3300
|
This is an alpha field and requires enabling the DRAControlPlaneController feature gate.
|
|
3301
|
+
:param pulumi.Input[Sequence[pulumi.Input['AllocatedDeviceStatusArgs']]] devices: Devices contains the status of each device allocated for this claim, as reported by the driver. This can include driver-specific information. Entries are owned by their respective drivers.
|
|
2989
3302
|
:param pulumi.Input[Sequence[pulumi.Input['ResourceClaimConsumerReferenceArgs']]] reserved_for: ReservedFor indicates which entities are currently allowed to use the claim. A Pod which references a ResourceClaim which is not reserved for that Pod will not be started. A claim that is in use or might be in use because it has been reserved must not get deallocated.
|
|
2990
3303
|
|
|
2991
3304
|
In a cluster with multiple scheduler instances, two pods might get scheduled concurrently by different schedulers. When they reference the same ResourceClaim which already has reached its maximum number of consumers, only one pod can be scheduled.
|
|
@@ -2998,6 +3311,8 @@ class ResourceClaimStatusArgs:
|
|
|
2998
3311
|
pulumi.set(__self__, "allocation", allocation)
|
|
2999
3312
|
if deallocation_requested is not None:
|
|
3000
3313
|
pulumi.set(__self__, "deallocation_requested", deallocation_requested)
|
|
3314
|
+
if devices is not None:
|
|
3315
|
+
pulumi.set(__self__, "devices", devices)
|
|
3001
3316
|
if reserved_for is not None:
|
|
3002
3317
|
pulumi.set(__self__, "reserved_for", reserved_for)
|
|
3003
3318
|
|
|
@@ -3029,6 +3344,18 @@ class ResourceClaimStatusArgs:
|
|
|
3029
3344
|
def deallocation_requested(self, value: Optional[pulumi.Input[bool]]):
|
|
3030
3345
|
pulumi.set(self, "deallocation_requested", value)
|
|
3031
3346
|
|
|
3347
|
+
@property
|
|
3348
|
+
@pulumi.getter
|
|
3349
|
+
def devices(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['AllocatedDeviceStatusArgs']]]]:
|
|
3350
|
+
"""
|
|
3351
|
+
Devices contains the status of each device allocated for this claim, as reported by the driver. This can include driver-specific information. Entries are owned by their respective drivers.
|
|
3352
|
+
"""
|
|
3353
|
+
return pulumi.get(self, "devices")
|
|
3354
|
+
|
|
3355
|
+
@devices.setter
|
|
3356
|
+
def devices(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['AllocatedDeviceStatusArgs']]]]):
|
|
3357
|
+
pulumi.set(self, "devices", value)
|
|
3358
|
+
|
|
3032
3359
|
@property
|
|
3033
3360
|
@pulumi.getter(name="reservedFor")
|
|
3034
3361
|
def reserved_for(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['ResourceClaimConsumerReferenceArgs']]]]:
|
|
@@ -3055,7 +3382,7 @@ if not MYPY:
|
|
|
3055
3382
|
"""
|
|
3056
3383
|
metadata: NotRequired[pulumi.Input['_meta.v1.ObjectMetaPatchArgsDict']]
|
|
3057
3384
|
"""
|
|
3058
|
-
ObjectMeta may contain labels and annotations that will be copied into the
|
|
3385
|
+
ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.
|
|
3059
3386
|
"""
|
|
3060
3387
|
spec: NotRequired[pulumi.Input['ResourceClaimSpecPatchArgsDict']]
|
|
3061
3388
|
"""
|
|
@@ -3071,7 +3398,7 @@ class ResourceClaimTemplateSpecPatchArgs:
|
|
|
3071
3398
|
spec: Optional[pulumi.Input['ResourceClaimSpecPatchArgs']] = None):
|
|
3072
3399
|
"""
|
|
3073
3400
|
ResourceClaimTemplateSpec contains the metadata and fields for a ResourceClaim.
|
|
3074
|
-
:param pulumi.Input['_meta.v1.ObjectMetaPatchArgs'] metadata: ObjectMeta may contain labels and annotations that will be copied into the
|
|
3401
|
+
:param pulumi.Input['_meta.v1.ObjectMetaPatchArgs'] metadata: ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.
|
|
3075
3402
|
:param pulumi.Input['ResourceClaimSpecPatchArgs'] spec: Spec for the ResourceClaim. The entire content is copied unchanged into the ResourceClaim that gets created from this template. The same fields as in a ResourceClaim are also valid here.
|
|
3076
3403
|
"""
|
|
3077
3404
|
if metadata is not None:
|
|
@@ -3083,7 +3410,7 @@ class ResourceClaimTemplateSpecPatchArgs:
|
|
|
3083
3410
|
@pulumi.getter
|
|
3084
3411
|
def metadata(self) -> Optional[pulumi.Input['_meta.v1.ObjectMetaPatchArgs']]:
|
|
3085
3412
|
"""
|
|
3086
|
-
ObjectMeta may contain labels and annotations that will be copied into the
|
|
3413
|
+
ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.
|
|
3087
3414
|
"""
|
|
3088
3415
|
return pulumi.get(self, "metadata")
|
|
3089
3416
|
|
|
@@ -3115,7 +3442,7 @@ if not MYPY:
|
|
|
3115
3442
|
"""
|
|
3116
3443
|
metadata: NotRequired[pulumi.Input['_meta.v1.ObjectMetaArgsDict']]
|
|
3117
3444
|
"""
|
|
3118
|
-
ObjectMeta may contain labels and annotations that will be copied into the
|
|
3445
|
+
ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.
|
|
3119
3446
|
"""
|
|
3120
3447
|
elif False:
|
|
3121
3448
|
ResourceClaimTemplateSpecArgsDict: TypeAlias = Mapping[str, Any]
|
|
@@ -3128,7 +3455,7 @@ class ResourceClaimTemplateSpecArgs:
|
|
|
3128
3455
|
"""
|
|
3129
3456
|
ResourceClaimTemplateSpec contains the metadata and fields for a ResourceClaim.
|
|
3130
3457
|
:param pulumi.Input['ResourceClaimSpecArgs'] spec: Spec for the ResourceClaim. The entire content is copied unchanged into the ResourceClaim that gets created from this template. The same fields as in a ResourceClaim are also valid here.
|
|
3131
|
-
:param pulumi.Input['_meta.v1.ObjectMetaArgs'] metadata: ObjectMeta may contain labels and annotations that will be copied into the
|
|
3458
|
+
:param pulumi.Input['_meta.v1.ObjectMetaArgs'] metadata: ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.
|
|
3132
3459
|
"""
|
|
3133
3460
|
pulumi.set(__self__, "spec", spec)
|
|
3134
3461
|
if metadata is not None:
|
|
@@ -3150,7 +3477,7 @@ class ResourceClaimTemplateSpecArgs:
|
|
|
3150
3477
|
@pulumi.getter
|
|
3151
3478
|
def metadata(self) -> Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]:
|
|
3152
3479
|
"""
|
|
3153
|
-
ObjectMeta may contain labels and annotations that will be copied into the
|
|
3480
|
+
ObjectMeta may contain labels and annotations that will be copied into the ResourceClaim when creating it. No other fields are allowed and will be rejected during validation.
|
|
3154
3481
|
"""
|
|
3155
3482
|
return pulumi.get(self, "metadata")
|
|
3156
3483
|
|
|
@@ -3922,3 +4249,124 @@ class ResourceSliceSpecArgs:
|
|
|
3922
4249
|
pulumi.set(self, "node_selector", value)
|
|
3923
4250
|
|
|
3924
4251
|
|
|
4252
|
+
if not MYPY:
|
|
4253
|
+
class ResourceSliceArgsDict(TypedDict):
|
|
4254
|
+
"""
|
|
4255
|
+
ResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver. A pool may span more than one ResourceSlice, and exactly how many ResourceSlices comprise a pool is determined by the driver.
|
|
4256
|
+
|
|
4257
|
+
At the moment, the only supported resources are devices with attributes and capacities. Each device in a given pool, regardless of how many ResourceSlices, must have a unique name. The ResourceSlice in which a device gets published may change over time. The unique identifier for a device is the tuple <driver name>, <pool name>, <device name>.
|
|
4258
|
+
|
|
4259
|
+
Whenever a driver needs to update a pool, it increments the pool.Spec.Pool.Generation number and updates all ResourceSlices with that new number and new resource definitions. A consumer must only use ResourceSlices with the highest generation number and ignore all others.
|
|
4260
|
+
|
|
4261
|
+
When allocating all resources in a pool matching certain criteria or when looking for the best solution among several different alternatives, a consumer should check the number of ResourceSlices in a pool (included in each ResourceSlice) to determine whether its view of a pool is complete and if not, should wait until the driver has completed updating the pool.
|
|
4262
|
+
|
|
4263
|
+
For resources that are not local to a node, the node name is not set. Instead, the driver may use a node selector to specify where the devices are available.
|
|
4264
|
+
|
|
4265
|
+
This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.
|
|
4266
|
+
"""
|
|
4267
|
+
spec: pulumi.Input['ResourceSliceSpecArgsDict']
|
|
4268
|
+
"""
|
|
4269
|
+
Contains the information published by the driver.
|
|
4270
|
+
|
|
4271
|
+
Changing the spec automatically increments the metadata.generation number.
|
|
4272
|
+
"""
|
|
4273
|
+
api_version: NotRequired[pulumi.Input[str]]
|
|
4274
|
+
"""
|
|
4275
|
+
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
4276
|
+
"""
|
|
4277
|
+
kind: NotRequired[pulumi.Input[str]]
|
|
4278
|
+
"""
|
|
4279
|
+
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
4280
|
+
"""
|
|
4281
|
+
metadata: NotRequired[pulumi.Input['_meta.v1.ObjectMetaArgsDict']]
|
|
4282
|
+
"""
|
|
4283
|
+
Standard object metadata
|
|
4284
|
+
"""
|
|
4285
|
+
elif False:
|
|
4286
|
+
ResourceSliceArgsDict: TypeAlias = Mapping[str, Any]
|
|
4287
|
+
|
|
4288
|
+
@pulumi.input_type
|
|
4289
|
+
class ResourceSliceArgs:
|
|
4290
|
+
def __init__(__self__, *,
|
|
4291
|
+
spec: pulumi.Input['ResourceSliceSpecArgs'],
|
|
4292
|
+
api_version: Optional[pulumi.Input[str]] = None,
|
|
4293
|
+
kind: Optional[pulumi.Input[str]] = None,
|
|
4294
|
+
metadata: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']] = None):
|
|
4295
|
+
"""
|
|
4296
|
+
ResourceSlice represents one or more resources in a pool of similar resources, managed by a common driver. A pool may span more than one ResourceSlice, and exactly how many ResourceSlices comprise a pool is determined by the driver.
|
|
4297
|
+
|
|
4298
|
+
At the moment, the only supported resources are devices with attributes and capacities. Each device in a given pool, regardless of how many ResourceSlices, must have a unique name. The ResourceSlice in which a device gets published may change over time. The unique identifier for a device is the tuple <driver name>, <pool name>, <device name>.
|
|
4299
|
+
|
|
4300
|
+
Whenever a driver needs to update a pool, it increments the pool.Spec.Pool.Generation number and updates all ResourceSlices with that new number and new resource definitions. A consumer must only use ResourceSlices with the highest generation number and ignore all others.
|
|
4301
|
+
|
|
4302
|
+
When allocating all resources in a pool matching certain criteria or when looking for the best solution among several different alternatives, a consumer should check the number of ResourceSlices in a pool (included in each ResourceSlice) to determine whether its view of a pool is complete and if not, should wait until the driver has completed updating the pool.
|
|
4303
|
+
|
|
4304
|
+
For resources that are not local to a node, the node name is not set. Instead, the driver may use a node selector to specify where the devices are available.
|
|
4305
|
+
|
|
4306
|
+
This is an alpha type and requires enabling the DynamicResourceAllocation feature gate.
|
|
4307
|
+
:param pulumi.Input['ResourceSliceSpecArgs'] spec: Contains the information published by the driver.
|
|
4308
|
+
|
|
4309
|
+
Changing the spec automatically increments the metadata.generation number.
|
|
4310
|
+
:param pulumi.Input[str] api_version: APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
4311
|
+
:param pulumi.Input[str] kind: Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
4312
|
+
:param pulumi.Input['_meta.v1.ObjectMetaArgs'] metadata: Standard object metadata
|
|
4313
|
+
"""
|
|
4314
|
+
pulumi.set(__self__, "spec", spec)
|
|
4315
|
+
if api_version is not None:
|
|
4316
|
+
pulumi.set(__self__, "api_version", 'resource.k8s.io/v1alpha3')
|
|
4317
|
+
if kind is not None:
|
|
4318
|
+
pulumi.set(__self__, "kind", 'ResourceSlice')
|
|
4319
|
+
if metadata is not None:
|
|
4320
|
+
pulumi.set(__self__, "metadata", metadata)
|
|
4321
|
+
|
|
4322
|
+
@property
|
|
4323
|
+
@pulumi.getter
|
|
4324
|
+
def spec(self) -> pulumi.Input['ResourceSliceSpecArgs']:
|
|
4325
|
+
"""
|
|
4326
|
+
Contains the information published by the driver.
|
|
4327
|
+
|
|
4328
|
+
Changing the spec automatically increments the metadata.generation number.
|
|
4329
|
+
"""
|
|
4330
|
+
return pulumi.get(self, "spec")
|
|
4331
|
+
|
|
4332
|
+
@spec.setter
|
|
4333
|
+
def spec(self, value: pulumi.Input['ResourceSliceSpecArgs']):
|
|
4334
|
+
pulumi.set(self, "spec", value)
|
|
4335
|
+
|
|
4336
|
+
@property
|
|
4337
|
+
@pulumi.getter(name="apiVersion")
|
|
4338
|
+
def api_version(self) -> Optional[pulumi.Input[str]]:
|
|
4339
|
+
"""
|
|
4340
|
+
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
|
|
4341
|
+
"""
|
|
4342
|
+
return pulumi.get(self, "api_version")
|
|
4343
|
+
|
|
4344
|
+
@api_version.setter
|
|
4345
|
+
def api_version(self, value: Optional[pulumi.Input[str]]):
|
|
4346
|
+
pulumi.set(self, "api_version", value)
|
|
4347
|
+
|
|
4348
|
+
@property
|
|
4349
|
+
@pulumi.getter
|
|
4350
|
+
def kind(self) -> Optional[pulumi.Input[str]]:
|
|
4351
|
+
"""
|
|
4352
|
+
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
|
|
4353
|
+
"""
|
|
4354
|
+
return pulumi.get(self, "kind")
|
|
4355
|
+
|
|
4356
|
+
@kind.setter
|
|
4357
|
+
def kind(self, value: Optional[pulumi.Input[str]]):
|
|
4358
|
+
pulumi.set(self, "kind", value)
|
|
4359
|
+
|
|
4360
|
+
@property
|
|
4361
|
+
@pulumi.getter
|
|
4362
|
+
def metadata(self) -> Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]:
|
|
4363
|
+
"""
|
|
4364
|
+
Standard object metadata
|
|
4365
|
+
"""
|
|
4366
|
+
return pulumi.get(self, "metadata")
|
|
4367
|
+
|
|
4368
|
+
@metadata.setter
|
|
4369
|
+
def metadata(self, value: Optional[pulumi.Input['_meta.v1.ObjectMetaArgs']]):
|
|
4370
|
+
pulumi.set(self, "metadata", value)
|
|
4371
|
+
|
|
4372
|
+
|