pulumi-spotinst 3.83.0a1720524486__py3-none-any.whl → 3.128.0a1767140134__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.
Files changed (77) hide show
  1. pulumi_spotinst/__init__.py +38 -1
  2. pulumi_spotinst/_inputs.py +4082 -846
  3. pulumi_spotinst/_utilities.py +15 -10
  4. pulumi_spotinst/account.py +171 -0
  5. pulumi_spotinst/aws/__init__.py +2 -1
  6. pulumi_spotinst/aws/_inputs.py +7292 -2871
  7. pulumi_spotinst/aws/account.py +25 -19
  8. pulumi_spotinst/aws/beanstalk.py +272 -190
  9. pulumi_spotinst/aws/credentials.py +42 -36
  10. pulumi_spotinst/aws/elastigroup.py +1321 -1176
  11. pulumi_spotinst/aws/managed_instance.py +633 -526
  12. pulumi_spotinst/aws/mr_scalar.py +827 -983
  13. pulumi_spotinst/aws/ocean.py +764 -570
  14. pulumi_spotinst/aws/ocean_extended_resource_definition.py +42 -36
  15. pulumi_spotinst/aws/ocean_launch_spec.py +580 -366
  16. pulumi_spotinst/aws/outputs.py +3421 -2205
  17. pulumi_spotinst/aws/suspension.py +51 -45
  18. pulumi_spotinst/azure/__init__.py +2 -1
  19. pulumi_spotinst/azure/_inputs.py +1492 -434
  20. pulumi_spotinst/azure/ocean_np.py +518 -464
  21. pulumi_spotinst/azure/ocean_np_virtual_node_group.py +479 -408
  22. pulumi_spotinst/azure/outputs.py +840 -345
  23. pulumi_spotinst/config/__init__.py +2 -1
  24. pulumi_spotinst/config/__init__.pyi +7 -2
  25. pulumi_spotinst/config/vars.py +11 -6
  26. pulumi_spotinst/credentials_azure.py +423 -0
  27. pulumi_spotinst/credentials_gcp.py +632 -0
  28. pulumi_spotinst/data_integration.py +58 -52
  29. pulumi_spotinst/ecs/__init__.py +2 -1
  30. pulumi_spotinst/ecs/_inputs.py +1164 -469
  31. pulumi_spotinst/ecs/ocean.py +711 -446
  32. pulumi_spotinst/ecs/ocean_launch_spec.py +367 -341
  33. pulumi_spotinst/ecs/outputs.py +463 -374
  34. pulumi_spotinst/elastigroup_azure_v3.py +985 -197
  35. pulumi_spotinst/gcp/__init__.py +2 -1
  36. pulumi_spotinst/gcp/_inputs.py +1061 -381
  37. pulumi_spotinst/gcp/elastigroup.py +885 -567
  38. pulumi_spotinst/gcp/outputs.py +542 -301
  39. pulumi_spotinst/gke/__init__.py +2 -1
  40. pulumi_spotinst/gke/_inputs.py +2071 -715
  41. pulumi_spotinst/gke/elastigroup.py +558 -382
  42. pulumi_spotinst/gke/ocean_import.py +379 -255
  43. pulumi_spotinst/gke/ocean_launch_spec.py +501 -384
  44. pulumi_spotinst/gke/ocean_launch_spec_import.py +42 -36
  45. pulumi_spotinst/gke/outputs.py +1063 -528
  46. pulumi_spotinst/health_check.py +116 -70
  47. pulumi_spotinst/notification_center.py +344 -0
  48. pulumi_spotinst/ocean_right_sizing_rule.py +515 -95
  49. pulumi_spotinst/oceancd/__init__.py +2 -1
  50. pulumi_spotinst/oceancd/_inputs.py +1709 -651
  51. pulumi_spotinst/oceancd/outputs.py +537 -526
  52. pulumi_spotinst/oceancd/rollout_spec.py +65 -59
  53. pulumi_spotinst/oceancd/strategy.py +37 -31
  54. pulumi_spotinst/oceancd/verification_provider.py +128 -122
  55. pulumi_spotinst/oceancd/verification_template.py +265 -259
  56. pulumi_spotinst/organization/__init__.py +2 -1
  57. pulumi_spotinst/organization/_inputs.py +151 -57
  58. pulumi_spotinst/organization/outputs.py +51 -46
  59. pulumi_spotinst/organization/policy.py +76 -70
  60. pulumi_spotinst/organization/programmatic_user.py +83 -77
  61. pulumi_spotinst/organization/user.py +126 -120
  62. pulumi_spotinst/organization/user_group.py +75 -69
  63. pulumi_spotinst/outputs.py +3005 -832
  64. pulumi_spotinst/provider.py +66 -40
  65. pulumi_spotinst/pulumi-plugin.json +1 -1
  66. pulumi_spotinst/spark/__init__.py +2 -1
  67. pulumi_spotinst/spark/_inputs.py +290 -81
  68. pulumi_spotinst/spark/ocean.py +169 -115
  69. pulumi_spotinst/spark/ocean_virtual_node_group.py +34 -28
  70. pulumi_spotinst/spark/outputs.py +136 -66
  71. pulumi_spotinst/stateful_node_azure.py +820 -784
  72. pulumi_spotinst/subscription.py +93 -87
  73. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/METADATA +7 -6
  74. pulumi_spotinst-3.128.0a1767140134.dist-info/RECORD +77 -0
  75. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/WHEEL +1 -1
  76. pulumi_spotinst-3.83.0a1720524486.dist-info/RECORD +0 -73
  77. {pulumi_spotinst-3.83.0a1720524486.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/top_level.txt +0 -0
@@ -1,12 +1,17 @@
1
1
  # coding=utf-8
2
- # *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
2
+ # *** WARNING: this file was generated by pulumi-language-python. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
- import copy
5
+ import builtins as _builtins
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from .. import _utilities
11
16
  from . import outputs
12
17
 
@@ -21,11 +26,17 @@ __all__ = [
21
26
  'OceanNpHealth',
22
27
  'OceanNpLinuxOsConfig',
23
28
  'OceanNpLinuxOsConfigSysctl',
29
+ 'OceanNpLogging',
30
+ 'OceanNpLoggingExport',
31
+ 'OceanNpLoggingExportAzureBlob',
24
32
  'OceanNpScheduling',
25
33
  'OceanNpSchedulingShutdownHours',
34
+ 'OceanNpSchedulingSuspensionHours',
26
35
  'OceanNpSchedulingTask',
27
36
  'OceanNpSchedulingTaskParameters',
28
37
  'OceanNpSchedulingTaskParametersParametersClusterRoll',
38
+ 'OceanNpSchedulingTaskParametersParametersUpgradeConfig',
39
+ 'OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters',
29
40
  'OceanNpTaint',
30
41
  'OceanNpUpdatePolicy',
31
42
  'OceanNpUpdatePolicyRollConfig',
@@ -33,9 +44,13 @@ __all__ = [
33
44
  'OceanNpVirtualNodeGroupHeadroom',
34
45
  'OceanNpVirtualNodeGroupLinuxOsConfig',
35
46
  'OceanNpVirtualNodeGroupLinuxOsConfigSysctl',
47
+ 'OceanNpVirtualNodeGroupScheduling',
48
+ 'OceanNpVirtualNodeGroupSchedulingShutdownHours',
36
49
  'OceanNpVirtualNodeGroupTaint',
37
50
  'OceanNpVirtualNodeGroupUpdatePolicy',
38
51
  'OceanNpVirtualNodeGroupUpdatePolicyRollConfig',
52
+ 'OceanNpVngTemplateScheduling',
53
+ 'OceanNpVngTemplateSchedulingVngTemplateShutdownHours',
39
54
  ]
40
55
 
41
56
  @pulumi.output_type
@@ -66,12 +81,12 @@ class OceanNpAutoscaler(dict):
66
81
  def __init__(__self__, *,
67
82
  autoscale_down: Optional['outputs.OceanNpAutoscalerAutoscaleDown'] = None,
68
83
  autoscale_headroom: Optional['outputs.OceanNpAutoscalerAutoscaleHeadroom'] = None,
69
- autoscale_is_enabled: Optional[bool] = None,
84
+ autoscale_is_enabled: Optional[_builtins.bool] = None,
70
85
  resource_limits: Optional['outputs.OceanNpAutoscalerResourceLimits'] = None):
71
86
  """
72
87
  :param 'OceanNpAutoscalerAutoscaleDownArgs' autoscale_down: Auto Scaling scale down operations.
73
88
  :param 'OceanNpAutoscalerAutoscaleHeadroomArgs' autoscale_headroom: Spare resource capacity management enabling fast assignment of pods without waiting for new resources to launch.
74
- :param bool autoscale_is_enabled: Enable the Ocean Kubernetes Autoscaler.
89
+ :param _builtins.bool autoscale_is_enabled: Enable the Ocean Kubernetes Autoscaler.
75
90
  :param 'OceanNpAutoscalerResourceLimitsArgs' resource_limits: Optionally set upper and lower bounds on the resource usage of the cluster.
76
91
  """
77
92
  if autoscale_down is not None:
@@ -83,7 +98,7 @@ class OceanNpAutoscaler(dict):
83
98
  if resource_limits is not None:
84
99
  pulumi.set(__self__, "resource_limits", resource_limits)
85
100
 
86
- @property
101
+ @_builtins.property
87
102
  @pulumi.getter(name="autoscaleDown")
88
103
  def autoscale_down(self) -> Optional['outputs.OceanNpAutoscalerAutoscaleDown']:
89
104
  """
@@ -91,7 +106,7 @@ class OceanNpAutoscaler(dict):
91
106
  """
92
107
  return pulumi.get(self, "autoscale_down")
93
108
 
94
- @property
109
+ @_builtins.property
95
110
  @pulumi.getter(name="autoscaleHeadroom")
96
111
  def autoscale_headroom(self) -> Optional['outputs.OceanNpAutoscalerAutoscaleHeadroom']:
97
112
  """
@@ -99,15 +114,15 @@ class OceanNpAutoscaler(dict):
99
114
  """
100
115
  return pulumi.get(self, "autoscale_headroom")
101
116
 
102
- @property
117
+ @_builtins.property
103
118
  @pulumi.getter(name="autoscaleIsEnabled")
104
- def autoscale_is_enabled(self) -> Optional[bool]:
119
+ def autoscale_is_enabled(self) -> Optional[_builtins.bool]:
105
120
  """
106
121
  Enable the Ocean Kubernetes Autoscaler.
107
122
  """
108
123
  return pulumi.get(self, "autoscale_is_enabled")
109
124
 
110
- @property
125
+ @_builtins.property
111
126
  @pulumi.getter(name="resourceLimits")
112
127
  def resource_limits(self) -> Optional['outputs.OceanNpAutoscalerResourceLimits']:
113
128
  """
@@ -136,16 +151,16 @@ class OceanNpAutoscalerAutoscaleDown(dict):
136
151
  return super().get(key, default)
137
152
 
138
153
  def __init__(__self__, *,
139
- max_scale_down_percentage: Optional[int] = None):
154
+ max_scale_down_percentage: Optional[_builtins.int] = None):
140
155
  """
141
- :param int max_scale_down_percentage: The maximum percentage allowed to scale down in a single scaling action.
156
+ :param _builtins.int max_scale_down_percentage: The maximum percentage allowed to scale down in a single scaling action.
142
157
  """
143
158
  if max_scale_down_percentage is not None:
144
159
  pulumi.set(__self__, "max_scale_down_percentage", max_scale_down_percentage)
145
160
 
146
- @property
161
+ @_builtins.property
147
162
  @pulumi.getter(name="maxScaleDownPercentage")
148
- def max_scale_down_percentage(self) -> Optional[int]:
163
+ def max_scale_down_percentage(self) -> Optional[_builtins.int]:
149
164
  """
150
165
  The maximum percentage allowed to scale down in a single scaling action.
151
166
  """
@@ -162,7 +177,7 @@ class OceanNpAutoscalerAutoscaleHeadroom(dict):
162
177
  if automatic is not None:
163
178
  pulumi.set(__self__, "automatic", automatic)
164
179
 
165
- @property
180
+ @_builtins.property
166
181
  @pulumi.getter
167
182
  def automatic(self) -> Optional['outputs.OceanNpAutoscalerAutoscaleHeadroomAutomatic']:
168
183
  """
@@ -191,28 +206,28 @@ class OceanNpAutoscalerAutoscaleHeadroomAutomatic(dict):
191
206
  return super().get(key, default)
192
207
 
193
208
  def __init__(__self__, *,
194
- is_enabled: Optional[bool] = None,
195
- percentage: Optional[int] = None):
209
+ is_enabled: Optional[_builtins.bool] = None,
210
+ percentage: Optional[_builtins.int] = None):
196
211
  """
197
- :param bool is_enabled: Enable automatic headroom. When set to True, Ocean configures and optimizes headroom automatically.
198
- :param int percentage: Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom.
212
+ :param _builtins.bool is_enabled: Enable automatic headroom. When set to `true`, Ocean configures and optimizes headroom automatically.
213
+ :param _builtins.int percentage: Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom.
199
214
  """
200
215
  if is_enabled is not None:
201
216
  pulumi.set(__self__, "is_enabled", is_enabled)
202
217
  if percentage is not None:
203
218
  pulumi.set(__self__, "percentage", percentage)
204
219
 
205
- @property
220
+ @_builtins.property
206
221
  @pulumi.getter(name="isEnabled")
207
- def is_enabled(self) -> Optional[bool]:
222
+ def is_enabled(self) -> Optional[_builtins.bool]:
208
223
  """
209
- Enable automatic headroom. When set to True, Ocean configures and optimizes headroom automatically.
224
+ Enable automatic headroom. When set to `true`, Ocean configures and optimizes headroom automatically.
210
225
  """
211
226
  return pulumi.get(self, "is_enabled")
212
227
 
213
- @property
228
+ @_builtins.property
214
229
  @pulumi.getter
215
- def percentage(self) -> Optional[int]:
230
+ def percentage(self) -> Optional[_builtins.int]:
216
231
  """
217
232
  Optionally set a number between 0-100 to control the percentage of total cluster resources dedicated to headroom.
218
233
  """
@@ -241,28 +256,28 @@ class OceanNpAutoscalerResourceLimits(dict):
241
256
  return super().get(key, default)
242
257
 
243
258
  def __init__(__self__, *,
244
- max_memory_gib: Optional[int] = None,
245
- max_vcpu: Optional[int] = None):
259
+ max_memory_gib: Optional[_builtins.int] = None,
260
+ max_vcpu: Optional[_builtins.int] = None):
246
261
  """
247
- :param int max_memory_gib: The maximum memory in GiB units that can be allocated to the cluster.
248
- :param int max_vcpu: The maximum cpu in vCpu units that can be allocated to the cluster.
262
+ :param _builtins.int max_memory_gib: The maximum memory in GiB units that can be allocated to the cluster.
263
+ :param _builtins.int max_vcpu: The maximum cpu in vCpu units that can be allocated to the cluster.
249
264
  """
250
265
  if max_memory_gib is not None:
251
266
  pulumi.set(__self__, "max_memory_gib", max_memory_gib)
252
267
  if max_vcpu is not None:
253
268
  pulumi.set(__self__, "max_vcpu", max_vcpu)
254
269
 
255
- @property
270
+ @_builtins.property
256
271
  @pulumi.getter(name="maxMemoryGib")
257
- def max_memory_gib(self) -> Optional[int]:
272
+ def max_memory_gib(self) -> Optional[_builtins.int]:
258
273
  """
259
274
  The maximum memory in GiB units that can be allocated to the cluster.
260
275
  """
261
276
  return pulumi.get(self, "max_memory_gib")
262
277
 
263
- @property
278
+ @_builtins.property
264
279
  @pulumi.getter(name="maxVcpu")
265
- def max_vcpu(self) -> Optional[int]:
280
+ def max_vcpu(self) -> Optional[_builtins.int]:
266
281
  """
267
282
  The maximum cpu in vCpu units that can be allocated to the cluster.
268
283
  """
@@ -313,37 +328,37 @@ class OceanNpFilters(dict):
313
328
  return super().get(key, default)
314
329
 
315
330
  def __init__(__self__, *,
316
- accelerated_networking: Optional[str] = None,
317
- architectures: Optional[Sequence[str]] = None,
318
- disk_performance: Optional[str] = None,
319
- exclude_series: Optional[Sequence[str]] = None,
320
- gpu_types: Optional[Sequence[str]] = None,
321
- max_gpu: Optional[float] = None,
322
- max_memory_gib: Optional[float] = None,
323
- max_vcpu: Optional[int] = None,
324
- min_disk: Optional[int] = None,
325
- min_gpu: Optional[float] = None,
326
- min_memory_gib: Optional[float] = None,
327
- min_nics: Optional[int] = None,
328
- min_vcpu: Optional[int] = None,
329
- series: Optional[Sequence[str]] = None,
330
- vm_types: Optional[Sequence[str]] = None):
331
- """
332
- :param str accelerated_networking: In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
333
- :param Sequence[str] architectures: The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
334
- :param str disk_performance: The filtered vm sizes will support at least one of the classes from this list.
335
- :param Sequence[str] exclude_series: Vm sizes belonging to a series from the list will not be available for scaling
336
- :param Sequence[str] gpu_types: The filtered gpu types will belong to one of the gpu types from this list.
337
- :param float max_gpu: Maximum number of GPUs available.
338
- :param float max_memory_gib: Maximum amount of Memory (GiB).
339
- :param int max_vcpu: Maximum number of vcpus available.
340
- :param int min_disk: Minimum number of data disks available.
341
- :param float min_gpu: Minimum number of GPUs available.
342
- :param float min_memory_gib: Minimum amount of Memory (GiB).
343
- :param int min_nics: Minimum number of network interfaces.
344
- :param int min_vcpu: Minimum number of vcpus available.
345
- :param Sequence[str] series: Vm sizes belonging to a series from the list will be available for scaling. We can specify include list and series can be specified with capital or small letters, with space, without space or with underscore '_' . For example all of these "DSv2", "Ds v2", "ds_v2" refer to same DS_v2 series.
346
- :param Sequence[str] vm_types: The filtered vm types will belong to one of the vm types from this list.
331
+ accelerated_networking: Optional[_builtins.str] = None,
332
+ architectures: Optional[Sequence[_builtins.str]] = None,
333
+ disk_performance: Optional[_builtins.str] = None,
334
+ exclude_series: Optional[Sequence[_builtins.str]] = None,
335
+ gpu_types: Optional[Sequence[_builtins.str]] = None,
336
+ max_gpu: Optional[_builtins.float] = None,
337
+ max_memory_gib: Optional[_builtins.float] = None,
338
+ max_vcpu: Optional[_builtins.int] = None,
339
+ min_disk: Optional[_builtins.int] = None,
340
+ min_gpu: Optional[_builtins.float] = None,
341
+ min_memory_gib: Optional[_builtins.float] = None,
342
+ min_nics: Optional[_builtins.int] = None,
343
+ min_vcpu: Optional[_builtins.int] = None,
344
+ series: Optional[Sequence[_builtins.str]] = None,
345
+ vm_types: Optional[Sequence[_builtins.str]] = None):
346
+ """
347
+ :param _builtins.str accelerated_networking: In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
348
+ :param Sequence[_builtins.str] architectures: The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
349
+ :param _builtins.str disk_performance: The filtered vm sizes will support at least one of the classes from this list.
350
+ :param Sequence[_builtins.str] exclude_series: Vm sizes belonging to a series from the list will not be available for scaling
351
+ :param Sequence[_builtins.str] gpu_types: The filtered gpu types will belong to one of the gpu types from this list.
352
+ :param _builtins.float max_gpu: Maximum number of GPUs available.
353
+ :param _builtins.float max_memory_gib: Maximum amount of Memory (GiB).
354
+ :param _builtins.int max_vcpu: Maximum number of vcpus available.
355
+ :param _builtins.int min_disk: Minimum number of data disks available.
356
+ :param _builtins.float min_gpu: Minimum number of GPUs available.
357
+ :param _builtins.float min_memory_gib: Minimum amount of Memory (GiB).
358
+ :param _builtins.int min_nics: Minimum number of network interfaces.
359
+ :param _builtins.int min_vcpu: Minimum number of vcpus available.
360
+ :param Sequence[_builtins.str] series: Vm sizes belonging to a series from the list will be available for scaling. We can specify include list and series can be specified with capital or small letters, with space, without space or with underscore '_' . For example all of these "DSv2", "Ds v2", "ds_v2" refer to same DS_v2 series.
361
+ :param Sequence[_builtins.str] vm_types: The filtered vm types will belong to one of the vm types from this list.
347
362
  """
348
363
  if accelerated_networking is not None:
349
364
  pulumi.set(__self__, "accelerated_networking", accelerated_networking)
@@ -376,121 +391,121 @@ class OceanNpFilters(dict):
376
391
  if vm_types is not None:
377
392
  pulumi.set(__self__, "vm_types", vm_types)
378
393
 
379
- @property
394
+ @_builtins.property
380
395
  @pulumi.getter(name="acceleratedNetworking")
381
- def accelerated_networking(self) -> Optional[str]:
396
+ def accelerated_networking(self) -> Optional[_builtins.str]:
382
397
  """
383
398
  In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
384
399
  """
385
400
  return pulumi.get(self, "accelerated_networking")
386
401
 
387
- @property
402
+ @_builtins.property
388
403
  @pulumi.getter
389
- def architectures(self) -> Optional[Sequence[str]]:
404
+ def architectures(self) -> Optional[Sequence[_builtins.str]]:
390
405
  """
391
406
  The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
392
407
  """
393
408
  return pulumi.get(self, "architectures")
394
409
 
395
- @property
410
+ @_builtins.property
396
411
  @pulumi.getter(name="diskPerformance")
397
- def disk_performance(self) -> Optional[str]:
412
+ def disk_performance(self) -> Optional[_builtins.str]:
398
413
  """
399
414
  The filtered vm sizes will support at least one of the classes from this list.
400
415
  """
401
416
  return pulumi.get(self, "disk_performance")
402
417
 
403
- @property
418
+ @_builtins.property
404
419
  @pulumi.getter(name="excludeSeries")
405
- def exclude_series(self) -> Optional[Sequence[str]]:
420
+ def exclude_series(self) -> Optional[Sequence[_builtins.str]]:
406
421
  """
407
422
  Vm sizes belonging to a series from the list will not be available for scaling
408
423
  """
409
424
  return pulumi.get(self, "exclude_series")
410
425
 
411
- @property
426
+ @_builtins.property
412
427
  @pulumi.getter(name="gpuTypes")
413
- def gpu_types(self) -> Optional[Sequence[str]]:
428
+ def gpu_types(self) -> Optional[Sequence[_builtins.str]]:
414
429
  """
415
430
  The filtered gpu types will belong to one of the gpu types from this list.
416
431
  """
417
432
  return pulumi.get(self, "gpu_types")
418
433
 
419
- @property
434
+ @_builtins.property
420
435
  @pulumi.getter(name="maxGpu")
421
- def max_gpu(self) -> Optional[float]:
436
+ def max_gpu(self) -> Optional[_builtins.float]:
422
437
  """
423
438
  Maximum number of GPUs available.
424
439
  """
425
440
  return pulumi.get(self, "max_gpu")
426
441
 
427
- @property
442
+ @_builtins.property
428
443
  @pulumi.getter(name="maxMemoryGib")
429
- def max_memory_gib(self) -> Optional[float]:
444
+ def max_memory_gib(self) -> Optional[_builtins.float]:
430
445
  """
431
446
  Maximum amount of Memory (GiB).
432
447
  """
433
448
  return pulumi.get(self, "max_memory_gib")
434
449
 
435
- @property
450
+ @_builtins.property
436
451
  @pulumi.getter(name="maxVcpu")
437
- def max_vcpu(self) -> Optional[int]:
452
+ def max_vcpu(self) -> Optional[_builtins.int]:
438
453
  """
439
454
  Maximum number of vcpus available.
440
455
  """
441
456
  return pulumi.get(self, "max_vcpu")
442
457
 
443
- @property
458
+ @_builtins.property
444
459
  @pulumi.getter(name="minDisk")
445
- def min_disk(self) -> Optional[int]:
460
+ def min_disk(self) -> Optional[_builtins.int]:
446
461
  """
447
462
  Minimum number of data disks available.
448
463
  """
449
464
  return pulumi.get(self, "min_disk")
450
465
 
451
- @property
466
+ @_builtins.property
452
467
  @pulumi.getter(name="minGpu")
453
- def min_gpu(self) -> Optional[float]:
468
+ def min_gpu(self) -> Optional[_builtins.float]:
454
469
  """
455
470
  Minimum number of GPUs available.
456
471
  """
457
472
  return pulumi.get(self, "min_gpu")
458
473
 
459
- @property
474
+ @_builtins.property
460
475
  @pulumi.getter(name="minMemoryGib")
461
- def min_memory_gib(self) -> Optional[float]:
476
+ def min_memory_gib(self) -> Optional[_builtins.float]:
462
477
  """
463
478
  Minimum amount of Memory (GiB).
464
479
  """
465
480
  return pulumi.get(self, "min_memory_gib")
466
481
 
467
- @property
482
+ @_builtins.property
468
483
  @pulumi.getter(name="minNics")
469
- def min_nics(self) -> Optional[int]:
484
+ def min_nics(self) -> Optional[_builtins.int]:
470
485
  """
471
486
  Minimum number of network interfaces.
472
487
  """
473
488
  return pulumi.get(self, "min_nics")
474
489
 
475
- @property
490
+ @_builtins.property
476
491
  @pulumi.getter(name="minVcpu")
477
- def min_vcpu(self) -> Optional[int]:
492
+ def min_vcpu(self) -> Optional[_builtins.int]:
478
493
  """
479
494
  Minimum number of vcpus available.
480
495
  """
481
496
  return pulumi.get(self, "min_vcpu")
482
497
 
483
- @property
498
+ @_builtins.property
484
499
  @pulumi.getter
485
- def series(self) -> Optional[Sequence[str]]:
500
+ def series(self) -> Optional[Sequence[_builtins.str]]:
486
501
  """
487
502
  Vm sizes belonging to a series from the list will be available for scaling. We can specify include list and series can be specified with capital or small letters, with space, without space or with underscore '_' . For example all of these "DSv2", "Ds v2", "ds_v2" refer to same DS_v2 series.
488
503
  """
489
504
  return pulumi.get(self, "series")
490
505
 
491
- @property
506
+ @_builtins.property
492
507
  @pulumi.getter(name="vmTypes")
493
- def vm_types(self) -> Optional[Sequence[str]]:
508
+ def vm_types(self) -> Optional[Sequence[_builtins.str]]:
494
509
  """
495
510
  The filtered vm types will belong to one of the vm types from this list.
496
511
  """
@@ -523,15 +538,15 @@ class OceanNpHeadroom(dict):
523
538
  return super().get(key, default)
524
539
 
525
540
  def __init__(__self__, *,
526
- cpu_per_unit: Optional[int] = None,
527
- gpu_per_unit: Optional[int] = None,
528
- memory_per_unit: Optional[int] = None,
529
- num_of_units: Optional[int] = None):
541
+ cpu_per_unit: Optional[_builtins.int] = None,
542
+ gpu_per_unit: Optional[_builtins.int] = None,
543
+ memory_per_unit: Optional[_builtins.int] = None,
544
+ num_of_units: Optional[_builtins.int] = None):
530
545
  """
531
- :param int cpu_per_unit: Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
532
- :param int gpu_per_unit: Amount of GPU to allocate for headroom unit.
533
- :param int memory_per_unit: Configure the amount of memory (MiB) to allocate the headroom.
534
- :param int num_of_units: The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
546
+ :param _builtins.int cpu_per_unit: Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
547
+ :param _builtins.int gpu_per_unit: Amount of GPU to allocate for headroom unit.
548
+ :param _builtins.int memory_per_unit: Configure the amount of memory (MiB) to allocate the headroom.
549
+ :param _builtins.int num_of_units: The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
535
550
  """
536
551
  if cpu_per_unit is not None:
537
552
  pulumi.set(__self__, "cpu_per_unit", cpu_per_unit)
@@ -542,33 +557,33 @@ class OceanNpHeadroom(dict):
542
557
  if num_of_units is not None:
543
558
  pulumi.set(__self__, "num_of_units", num_of_units)
544
559
 
545
- @property
560
+ @_builtins.property
546
561
  @pulumi.getter(name="cpuPerUnit")
547
- def cpu_per_unit(self) -> Optional[int]:
562
+ def cpu_per_unit(self) -> Optional[_builtins.int]:
548
563
  """
549
564
  Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
550
565
  """
551
566
  return pulumi.get(self, "cpu_per_unit")
552
567
 
553
- @property
568
+ @_builtins.property
554
569
  @pulumi.getter(name="gpuPerUnit")
555
- def gpu_per_unit(self) -> Optional[int]:
570
+ def gpu_per_unit(self) -> Optional[_builtins.int]:
556
571
  """
557
572
  Amount of GPU to allocate for headroom unit.
558
573
  """
559
574
  return pulumi.get(self, "gpu_per_unit")
560
575
 
561
- @property
576
+ @_builtins.property
562
577
  @pulumi.getter(name="memoryPerUnit")
563
- def memory_per_unit(self) -> Optional[int]:
578
+ def memory_per_unit(self) -> Optional[_builtins.int]:
564
579
  """
565
580
  Configure the amount of memory (MiB) to allocate the headroom.
566
581
  """
567
582
  return pulumi.get(self, "memory_per_unit")
568
583
 
569
- @property
584
+ @_builtins.property
570
585
  @pulumi.getter(name="numOfUnits")
571
- def num_of_units(self) -> Optional[int]:
586
+ def num_of_units(self) -> Optional[_builtins.int]:
572
587
  """
573
588
  The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
574
589
  """
@@ -595,16 +610,16 @@ class OceanNpHealth(dict):
595
610
  return super().get(key, default)
596
611
 
597
612
  def __init__(__self__, *,
598
- grace_period: Optional[int] = None):
613
+ grace_period: Optional[_builtins.int] = None):
599
614
  """
600
- :param int grace_period: The amount of time to wait, in seconds, from the moment the instance has launched until monitoring of its health checks begins.
615
+ :param _builtins.int grace_period: The amount of time to wait, in seconds, from the moment the instance has launched until monitoring of its health checks begins.
601
616
  """
602
617
  if grace_period is not None:
603
618
  pulumi.set(__self__, "grace_period", grace_period)
604
619
 
605
- @property
620
+ @_builtins.property
606
621
  @pulumi.getter(name="gracePeriod")
607
- def grace_period(self) -> Optional[int]:
622
+ def grace_period(self) -> Optional[_builtins.int]:
608
623
  """
609
624
  The amount of time to wait, in seconds, from the moment the instance has launched until monitoring of its health checks begins.
610
625
  """
@@ -621,7 +636,7 @@ class OceanNpLinuxOsConfig(dict):
621
636
  if sysctls is not None:
622
637
  pulumi.set(__self__, "sysctls", sysctls)
623
638
 
624
- @property
639
+ @_builtins.property
625
640
  @pulumi.getter
626
641
  def sysctls(self) -> Optional[Sequence['outputs.OceanNpLinuxOsConfigSysctl']]:
627
642
  """
@@ -650,22 +665,96 @@ class OceanNpLinuxOsConfigSysctl(dict):
650
665
  return super().get(key, default)
651
666
 
652
667
  def __init__(__self__, *,
653
- vm_max_map_count: Optional[int] = None):
668
+ vm_max_map_count: Optional[_builtins.int] = None):
654
669
  """
655
- :param int vm_max_map_count: Maximum number of memory map areas a process may have. Can be configured only if OS type is Linux.
670
+ :param _builtins.int vm_max_map_count: Maximum number of memory map areas a process may have. Can be configured only if OS type is Linux.
656
671
  """
657
672
  if vm_max_map_count is not None:
658
673
  pulumi.set(__self__, "vm_max_map_count", vm_max_map_count)
659
674
 
660
- @property
675
+ @_builtins.property
661
676
  @pulumi.getter(name="vmMaxMapCount")
662
- def vm_max_map_count(self) -> Optional[int]:
677
+ def vm_max_map_count(self) -> Optional[_builtins.int]:
663
678
  """
664
679
  Maximum number of memory map areas a process may have. Can be configured only if OS type is Linux.
665
680
  """
666
681
  return pulumi.get(self, "vm_max_map_count")
667
682
 
668
683
 
684
+ @pulumi.output_type
685
+ class OceanNpLogging(dict):
686
+ def __init__(__self__, *,
687
+ export: Optional['outputs.OceanNpLoggingExport'] = None):
688
+ """
689
+ :param 'OceanNpLoggingExportArgs' export: The Ocean AKS Logging Export object.
690
+ """
691
+ if export is not None:
692
+ pulumi.set(__self__, "export", export)
693
+
694
+ @_builtins.property
695
+ @pulumi.getter
696
+ def export(self) -> Optional['outputs.OceanNpLoggingExport']:
697
+ """
698
+ The Ocean AKS Logging Export object.
699
+ """
700
+ return pulumi.get(self, "export")
701
+
702
+
703
+ @pulumi.output_type
704
+ class OceanNpLoggingExport(dict):
705
+ @staticmethod
706
+ def __key_warning(key: str):
707
+ suggest = None
708
+ if key == "azureBlobs":
709
+ suggest = "azure_blobs"
710
+
711
+ if suggest:
712
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpLoggingExport. Access the value via the '{suggest}' property getter instead.")
713
+
714
+ def __getitem__(self, key: str) -> Any:
715
+ OceanNpLoggingExport.__key_warning(key)
716
+ return super().__getitem__(key)
717
+
718
+ def get(self, key: str, default = None) -> Any:
719
+ OceanNpLoggingExport.__key_warning(key)
720
+ return super().get(key, default)
721
+
722
+ def __init__(__self__, *,
723
+ azure_blobs: Optional[Sequence['outputs.OceanNpLoggingExportAzureBlob']] = None):
724
+ """
725
+ :param Sequence['OceanNpLoggingExportAzureBlobArgs'] azure_blobs: Exports your cluster's logs to the storage account and container configured on the storage account [data integration](https://docs.spot.io/ocean/features/log-integration-with-azure-blob?id=log-integration-with-azure-blob) given. Each file contains logs of 3 minutes where each log is separated by a new line and saved as a JSON. The file formats are `container`/`accountId``oceanId``oceanName`_`startTime`.log
726
+ """
727
+ if azure_blobs is not None:
728
+ pulumi.set(__self__, "azure_blobs", azure_blobs)
729
+
730
+ @_builtins.property
731
+ @pulumi.getter(name="azureBlobs")
732
+ def azure_blobs(self) -> Optional[Sequence['outputs.OceanNpLoggingExportAzureBlob']]:
733
+ """
734
+ Exports your cluster's logs to the storage account and container configured on the storage account [data integration](https://docs.spot.io/ocean/features/log-integration-with-azure-blob?id=log-integration-with-azure-blob) given. Each file contains logs of 3 minutes where each log is separated by a new line and saved as a JSON. The file formats are `container`/`accountId``oceanId``oceanName`_`startTime`.log
735
+ """
736
+ return pulumi.get(self, "azure_blobs")
737
+
738
+
739
+ @pulumi.output_type
740
+ class OceanNpLoggingExportAzureBlob(dict):
741
+ def __init__(__self__, *,
742
+ id: Optional[_builtins.str] = None):
743
+ """
744
+ :param _builtins.str id: The identifier of The Azure Blob data integration to export the logs to.
745
+ """
746
+ if id is not None:
747
+ pulumi.set(__self__, "id", id)
748
+
749
+ @_builtins.property
750
+ @pulumi.getter
751
+ def id(self) -> Optional[_builtins.str]:
752
+ """
753
+ The identifier of The Azure Blob data integration to export the logs to.
754
+ """
755
+ return pulumi.get(self, "id")
756
+
757
+
669
758
  @pulumi.output_type
670
759
  class OceanNpScheduling(dict):
671
760
  @staticmethod
@@ -673,6 +762,8 @@ class OceanNpScheduling(dict):
673
762
  suggest = None
674
763
  if key == "shutdownHours":
675
764
  suggest = "shutdown_hours"
765
+ elif key == "suspensionHours":
766
+ suggest = "suspension_hours"
676
767
 
677
768
  if suggest:
678
769
  pulumi.log.warn(f"Key '{key}' not found in OceanNpScheduling. Access the value via the '{suggest}' property getter instead.")
@@ -687,18 +778,32 @@ class OceanNpScheduling(dict):
687
778
 
688
779
  def __init__(__self__, *,
689
780
  shutdown_hours: Optional['outputs.OceanNpSchedulingShutdownHours'] = None,
781
+ suspension_hours: Optional['outputs.OceanNpSchedulingSuspensionHours'] = None,
690
782
  tasks: Optional[Sequence['outputs.OceanNpSchedulingTask']] = None):
783
+ """
784
+ :param 'OceanNpSchedulingShutdownHoursArgs' shutdown_hours: An object used to specify times that the nodes in the virtual node group will be stopped.
785
+ """
691
786
  if shutdown_hours is not None:
692
787
  pulumi.set(__self__, "shutdown_hours", shutdown_hours)
788
+ if suspension_hours is not None:
789
+ pulumi.set(__self__, "suspension_hours", suspension_hours)
693
790
  if tasks is not None:
694
791
  pulumi.set(__self__, "tasks", tasks)
695
792
 
696
- @property
793
+ @_builtins.property
697
794
  @pulumi.getter(name="shutdownHours")
698
795
  def shutdown_hours(self) -> Optional['outputs.OceanNpSchedulingShutdownHours']:
796
+ """
797
+ An object used to specify times that the nodes in the virtual node group will be stopped.
798
+ """
699
799
  return pulumi.get(self, "shutdown_hours")
700
800
 
701
- @property
801
+ @_builtins.property
802
+ @pulumi.getter(name="suspensionHours")
803
+ def suspension_hours(self) -> Optional['outputs.OceanNpSchedulingSuspensionHours']:
804
+ return pulumi.get(self, "suspension_hours")
805
+
806
+ @_builtins.property
702
807
  @pulumi.getter
703
808
  def tasks(self) -> Optional[Sequence['outputs.OceanNpSchedulingTask']]:
704
809
  return pulumi.get(self, "tasks")
@@ -726,21 +831,73 @@ class OceanNpSchedulingShutdownHours(dict):
726
831
  return super().get(key, default)
727
832
 
728
833
  def __init__(__self__, *,
729
- is_enabled: Optional[bool] = None,
730
- time_windows: Optional[Sequence[str]] = None):
834
+ is_enabled: Optional[_builtins.bool] = None,
835
+ time_windows: Optional[Sequence[_builtins.str]] = None):
836
+ """
837
+ :param Sequence[_builtins.str] time_windows: The times that the shutdown hours will apply. Required if `is_enabled` is true.
838
+ """
839
+ if is_enabled is not None:
840
+ pulumi.set(__self__, "is_enabled", is_enabled)
841
+ if time_windows is not None:
842
+ pulumi.set(__self__, "time_windows", time_windows)
843
+
844
+ @_builtins.property
845
+ @pulumi.getter(name="isEnabled")
846
+ def is_enabled(self) -> Optional[_builtins.bool]:
847
+ return pulumi.get(self, "is_enabled")
848
+
849
+ @_builtins.property
850
+ @pulumi.getter(name="timeWindows")
851
+ def time_windows(self) -> Optional[Sequence[_builtins.str]]:
852
+ """
853
+ The times that the shutdown hours will apply. Required if `is_enabled` is true.
854
+ """
855
+ return pulumi.get(self, "time_windows")
856
+
857
+
858
+ @pulumi.output_type
859
+ class OceanNpSchedulingSuspensionHours(dict):
860
+ @staticmethod
861
+ def __key_warning(key: str):
862
+ suggest = None
863
+ if key == "isEnabled":
864
+ suggest = "is_enabled"
865
+ elif key == "timeWindows":
866
+ suggest = "time_windows"
867
+
868
+ if suggest:
869
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpSchedulingSuspensionHours. Access the value via the '{suggest}' property getter instead.")
870
+
871
+ def __getitem__(self, key: str) -> Any:
872
+ OceanNpSchedulingSuspensionHours.__key_warning(key)
873
+ return super().__getitem__(key)
874
+
875
+ def get(self, key: str, default = None) -> Any:
876
+ OceanNpSchedulingSuspensionHours.__key_warning(key)
877
+ return super().get(key, default)
878
+
879
+ def __init__(__self__, *,
880
+ is_enabled: Optional[_builtins.bool] = None,
881
+ time_windows: Optional[Sequence[_builtins.str]] = None):
882
+ """
883
+ :param Sequence[_builtins.str] time_windows: The times that the shutdown hours will apply. Required if `is_enabled` is true.
884
+ """
731
885
  if is_enabled is not None:
732
886
  pulumi.set(__self__, "is_enabled", is_enabled)
733
887
  if time_windows is not None:
734
888
  pulumi.set(__self__, "time_windows", time_windows)
735
889
 
736
- @property
890
+ @_builtins.property
737
891
  @pulumi.getter(name="isEnabled")
738
- def is_enabled(self) -> Optional[bool]:
892
+ def is_enabled(self) -> Optional[_builtins.bool]:
739
893
  return pulumi.get(self, "is_enabled")
740
894
 
741
- @property
895
+ @_builtins.property
742
896
  @pulumi.getter(name="timeWindows")
743
- def time_windows(self) -> Optional[Sequence[str]]:
897
+ def time_windows(self) -> Optional[Sequence[_builtins.str]]:
898
+ """
899
+ The times that the shutdown hours will apply. Required if `is_enabled` is true.
900
+ """
744
901
  return pulumi.get(self, "time_windows")
745
902
 
746
903
 
@@ -768,9 +925,9 @@ class OceanNpSchedulingTask(dict):
768
925
  return super().get(key, default)
769
926
 
770
927
  def __init__(__self__, *,
771
- cron_expression: str,
772
- is_enabled: bool,
773
- task_type: str,
928
+ cron_expression: _builtins.str,
929
+ is_enabled: _builtins.bool,
930
+ task_type: _builtins.str,
774
931
  parameters: Optional['outputs.OceanNpSchedulingTaskParameters'] = None):
775
932
  pulumi.set(__self__, "cron_expression", cron_expression)
776
933
  pulumi.set(__self__, "is_enabled", is_enabled)
@@ -778,22 +935,22 @@ class OceanNpSchedulingTask(dict):
778
935
  if parameters is not None:
779
936
  pulumi.set(__self__, "parameters", parameters)
780
937
 
781
- @property
938
+ @_builtins.property
782
939
  @pulumi.getter(name="cronExpression")
783
- def cron_expression(self) -> str:
940
+ def cron_expression(self) -> _builtins.str:
784
941
  return pulumi.get(self, "cron_expression")
785
942
 
786
- @property
943
+ @_builtins.property
787
944
  @pulumi.getter(name="isEnabled")
788
- def is_enabled(self) -> bool:
945
+ def is_enabled(self) -> _builtins.bool:
789
946
  return pulumi.get(self, "is_enabled")
790
947
 
791
- @property
948
+ @_builtins.property
792
949
  @pulumi.getter(name="taskType")
793
- def task_type(self) -> str:
950
+ def task_type(self) -> _builtins.str:
794
951
  return pulumi.get(self, "task_type")
795
952
 
796
- @property
953
+ @_builtins.property
797
954
  @pulumi.getter
798
955
  def parameters(self) -> Optional['outputs.OceanNpSchedulingTaskParameters']:
799
956
  return pulumi.get(self, "parameters")
@@ -806,6 +963,8 @@ class OceanNpSchedulingTaskParameters(dict):
806
963
  suggest = None
807
964
  if key == "parametersClusterRoll":
808
965
  suggest = "parameters_cluster_roll"
966
+ elif key == "parametersUpgradeConfig":
967
+ suggest = "parameters_upgrade_config"
809
968
 
810
969
  if suggest:
811
970
  pulumi.log.warn(f"Key '{key}' not found in OceanNpSchedulingTaskParameters. Access the value via the '{suggest}' property getter instead.")
@@ -819,15 +978,23 @@ class OceanNpSchedulingTaskParameters(dict):
819
978
  return super().get(key, default)
820
979
 
821
980
  def __init__(__self__, *,
822
- parameters_cluster_roll: Optional['outputs.OceanNpSchedulingTaskParametersParametersClusterRoll'] = None):
981
+ parameters_cluster_roll: Optional['outputs.OceanNpSchedulingTaskParametersParametersClusterRoll'] = None,
982
+ parameters_upgrade_config: Optional['outputs.OceanNpSchedulingTaskParametersParametersUpgradeConfig'] = None):
823
983
  if parameters_cluster_roll is not None:
824
984
  pulumi.set(__self__, "parameters_cluster_roll", parameters_cluster_roll)
985
+ if parameters_upgrade_config is not None:
986
+ pulumi.set(__self__, "parameters_upgrade_config", parameters_upgrade_config)
825
987
 
826
- @property
988
+ @_builtins.property
827
989
  @pulumi.getter(name="parametersClusterRoll")
828
990
  def parameters_cluster_roll(self) -> Optional['outputs.OceanNpSchedulingTaskParametersParametersClusterRoll']:
829
991
  return pulumi.get(self, "parameters_cluster_roll")
830
992
 
993
+ @_builtins.property
994
+ @pulumi.getter(name="parametersUpgradeConfig")
995
+ def parameters_upgrade_config(self) -> Optional['outputs.OceanNpSchedulingTaskParametersParametersUpgradeConfig']:
996
+ return pulumi.get(self, "parameters_upgrade_config")
997
+
831
998
 
832
999
  @pulumi.output_type
833
1000
  class OceanNpSchedulingTaskParametersParametersClusterRoll(dict):
@@ -857,12 +1024,20 @@ class OceanNpSchedulingTaskParametersParametersClusterRoll(dict):
857
1024
  return super().get(key, default)
858
1025
 
859
1026
  def __init__(__self__, *,
860
- batch_min_healthy_percentage: Optional[int] = None,
861
- batch_size_percentage: Optional[int] = None,
862
- comment: Optional[str] = None,
863
- respect_pdb: Optional[bool] = None,
864
- respect_restrict_scale_down: Optional[bool] = None,
865
- vng_ids: Optional[Sequence[str]] = None):
1027
+ batch_min_healthy_percentage: Optional[_builtins.int] = None,
1028
+ batch_size_percentage: Optional[_builtins.int] = None,
1029
+ comment: Optional[_builtins.str] = None,
1030
+ respect_pdb: Optional[_builtins.bool] = None,
1031
+ respect_restrict_scale_down: Optional[_builtins.bool] = None,
1032
+ vng_ids: Optional[Sequence[_builtins.str]] = None):
1033
+ """
1034
+ :param _builtins.int batch_min_healthy_percentage: Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1035
+ :param _builtins.int batch_size_percentage: Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1036
+ :param _builtins.str comment: Add a comment description for the roll. The comment is limited to 256 chars and optional.
1037
+ :param _builtins.bool respect_pdb: During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1038
+ :param _builtins.bool respect_restrict_scale_down: During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1039
+ :param Sequence[_builtins.str] vng_ids: List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1040
+ """
866
1041
  if batch_min_healthy_percentage is not None:
867
1042
  pulumi.set(__self__, "batch_min_healthy_percentage", batch_min_healthy_percentage)
868
1043
  if batch_size_percentage is not None:
@@ -876,71 +1051,229 @@ class OceanNpSchedulingTaskParametersParametersClusterRoll(dict):
876
1051
  if vng_ids is not None:
877
1052
  pulumi.set(__self__, "vng_ids", vng_ids)
878
1053
 
879
- @property
1054
+ @_builtins.property
880
1055
  @pulumi.getter(name="batchMinHealthyPercentage")
881
- def batch_min_healthy_percentage(self) -> Optional[int]:
1056
+ def batch_min_healthy_percentage(self) -> Optional[_builtins.int]:
1057
+ """
1058
+ Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1059
+ """
882
1060
  return pulumi.get(self, "batch_min_healthy_percentage")
883
1061
 
884
- @property
1062
+ @_builtins.property
885
1063
  @pulumi.getter(name="batchSizePercentage")
886
- def batch_size_percentage(self) -> Optional[int]:
1064
+ def batch_size_percentage(self) -> Optional[_builtins.int]:
1065
+ """
1066
+ Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1067
+ """
887
1068
  return pulumi.get(self, "batch_size_percentage")
888
1069
 
889
- @property
1070
+ @_builtins.property
890
1071
  @pulumi.getter
891
- def comment(self) -> Optional[str]:
1072
+ def comment(self) -> Optional[_builtins.str]:
1073
+ """
1074
+ Add a comment description for the roll. The comment is limited to 256 chars and optional.
1075
+ """
892
1076
  return pulumi.get(self, "comment")
893
1077
 
894
- @property
1078
+ @_builtins.property
895
1079
  @pulumi.getter(name="respectPdb")
896
- def respect_pdb(self) -> Optional[bool]:
1080
+ def respect_pdb(self) -> Optional[_builtins.bool]:
1081
+ """
1082
+ During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1083
+ """
897
1084
  return pulumi.get(self, "respect_pdb")
898
1085
 
899
- @property
1086
+ @_builtins.property
900
1087
  @pulumi.getter(name="respectRestrictScaleDown")
901
- def respect_restrict_scale_down(self) -> Optional[bool]:
1088
+ def respect_restrict_scale_down(self) -> Optional[_builtins.bool]:
1089
+ """
1090
+ During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1091
+ """
902
1092
  return pulumi.get(self, "respect_restrict_scale_down")
903
1093
 
904
- @property
1094
+ @_builtins.property
905
1095
  @pulumi.getter(name="vngIds")
906
- def vng_ids(self) -> Optional[Sequence[str]]:
1096
+ def vng_ids(self) -> Optional[Sequence[_builtins.str]]:
1097
+ """
1098
+ List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1099
+ """
907
1100
  return pulumi.get(self, "vng_ids")
908
1101
 
909
1102
 
1103
+ @pulumi.output_type
1104
+ class OceanNpSchedulingTaskParametersParametersUpgradeConfig(dict):
1105
+ @staticmethod
1106
+ def __key_warning(key: str):
1107
+ suggest = None
1108
+ if key == "applyRoll":
1109
+ suggest = "apply_roll"
1110
+ elif key == "rollParameters":
1111
+ suggest = "roll_parameters"
1112
+ elif key == "scopeVersion":
1113
+ suggest = "scope_version"
1114
+
1115
+ if suggest:
1116
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpSchedulingTaskParametersParametersUpgradeConfig. Access the value via the '{suggest}' property getter instead.")
1117
+
1118
+ def __getitem__(self, key: str) -> Any:
1119
+ OceanNpSchedulingTaskParametersParametersUpgradeConfig.__key_warning(key)
1120
+ return super().__getitem__(key)
1121
+
1122
+ def get(self, key: str, default = None) -> Any:
1123
+ OceanNpSchedulingTaskParametersParametersUpgradeConfig.__key_warning(key)
1124
+ return super().get(key, default)
1125
+
1126
+ def __init__(__self__, *,
1127
+ apply_roll: Optional[_builtins.bool] = None,
1128
+ roll_parameters: Optional['outputs.OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters'] = None,
1129
+ scope_version: Optional[_builtins.str] = None):
1130
+ if apply_roll is not None:
1131
+ pulumi.set(__self__, "apply_roll", apply_roll)
1132
+ if roll_parameters is not None:
1133
+ pulumi.set(__self__, "roll_parameters", roll_parameters)
1134
+ if scope_version is not None:
1135
+ pulumi.set(__self__, "scope_version", scope_version)
1136
+
1137
+ @_builtins.property
1138
+ @pulumi.getter(name="applyRoll")
1139
+ def apply_roll(self) -> Optional[_builtins.bool]:
1140
+ return pulumi.get(self, "apply_roll")
1141
+
1142
+ @_builtins.property
1143
+ @pulumi.getter(name="rollParameters")
1144
+ def roll_parameters(self) -> Optional['outputs.OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters']:
1145
+ return pulumi.get(self, "roll_parameters")
1146
+
1147
+ @_builtins.property
1148
+ @pulumi.getter(name="scopeVersion")
1149
+ def scope_version(self) -> Optional[_builtins.str]:
1150
+ return pulumi.get(self, "scope_version")
1151
+
1152
+
1153
+ @pulumi.output_type
1154
+ class OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters(dict):
1155
+ @staticmethod
1156
+ def __key_warning(key: str):
1157
+ suggest = None
1158
+ if key == "batchMinHealthyPercentage":
1159
+ suggest = "batch_min_healthy_percentage"
1160
+ elif key == "batchSizePercentage":
1161
+ suggest = "batch_size_percentage"
1162
+ elif key == "respectPdb":
1163
+ suggest = "respect_pdb"
1164
+ elif key == "respectRestrictScaleDown":
1165
+ suggest = "respect_restrict_scale_down"
1166
+
1167
+ if suggest:
1168
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters. Access the value via the '{suggest}' property getter instead.")
1169
+
1170
+ def __getitem__(self, key: str) -> Any:
1171
+ OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters.__key_warning(key)
1172
+ return super().__getitem__(key)
1173
+
1174
+ def get(self, key: str, default = None) -> Any:
1175
+ OceanNpSchedulingTaskParametersParametersUpgradeConfigRollParameters.__key_warning(key)
1176
+ return super().get(key, default)
1177
+
1178
+ def __init__(__self__, *,
1179
+ batch_min_healthy_percentage: Optional[_builtins.int] = None,
1180
+ batch_size_percentage: Optional[_builtins.int] = None,
1181
+ comment: Optional[_builtins.str] = None,
1182
+ respect_pdb: Optional[_builtins.bool] = None,
1183
+ respect_restrict_scale_down: Optional[_builtins.bool] = None):
1184
+ """
1185
+ :param _builtins.int batch_min_healthy_percentage: Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1186
+ :param _builtins.int batch_size_percentage: Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1187
+ :param _builtins.str comment: Add a comment description for the roll. The comment is limited to 256 chars and optional.
1188
+ :param _builtins.bool respect_pdb: During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1189
+ :param _builtins.bool respect_restrict_scale_down: During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1190
+ """
1191
+ if batch_min_healthy_percentage is not None:
1192
+ pulumi.set(__self__, "batch_min_healthy_percentage", batch_min_healthy_percentage)
1193
+ if batch_size_percentage is not None:
1194
+ pulumi.set(__self__, "batch_size_percentage", batch_size_percentage)
1195
+ if comment is not None:
1196
+ pulumi.set(__self__, "comment", comment)
1197
+ if respect_pdb is not None:
1198
+ pulumi.set(__self__, "respect_pdb", respect_pdb)
1199
+ if respect_restrict_scale_down is not None:
1200
+ pulumi.set(__self__, "respect_restrict_scale_down", respect_restrict_scale_down)
1201
+
1202
+ @_builtins.property
1203
+ @pulumi.getter(name="batchMinHealthyPercentage")
1204
+ def batch_min_healthy_percentage(self) -> Optional[_builtins.int]:
1205
+ """
1206
+ Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1207
+ """
1208
+ return pulumi.get(self, "batch_min_healthy_percentage")
1209
+
1210
+ @_builtins.property
1211
+ @pulumi.getter(name="batchSizePercentage")
1212
+ def batch_size_percentage(self) -> Optional[_builtins.int]:
1213
+ """
1214
+ Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1215
+ """
1216
+ return pulumi.get(self, "batch_size_percentage")
1217
+
1218
+ @_builtins.property
1219
+ @pulumi.getter
1220
+ def comment(self) -> Optional[_builtins.str]:
1221
+ """
1222
+ Add a comment description for the roll. The comment is limited to 256 chars and optional.
1223
+ """
1224
+ return pulumi.get(self, "comment")
1225
+
1226
+ @_builtins.property
1227
+ @pulumi.getter(name="respectPdb")
1228
+ def respect_pdb(self) -> Optional[_builtins.bool]:
1229
+ """
1230
+ During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1231
+ """
1232
+ return pulumi.get(self, "respect_pdb")
1233
+
1234
+ @_builtins.property
1235
+ @pulumi.getter(name="respectRestrictScaleDown")
1236
+ def respect_restrict_scale_down(self) -> Optional[_builtins.bool]:
1237
+ """
1238
+ During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1239
+ """
1240
+ return pulumi.get(self, "respect_restrict_scale_down")
1241
+
1242
+
910
1243
  @pulumi.output_type
911
1244
  class OceanNpTaint(dict):
912
1245
  def __init__(__self__, *,
913
- effect: str,
914
- key: str,
915
- value: str):
1246
+ effect: _builtins.str,
1247
+ key: _builtins.str,
1248
+ value: _builtins.str):
916
1249
  """
917
- :param str effect: Set taint effect.
918
- :param str key: Set taint key. The following taint keys are not allowed: ["node.kubernetes.io/not-ready", "node.kubernetes.io/unreachable", "node.kubernetes.io/unschedulable", "node.kubernetes.io/memory-pressure", "node.kubernetes.io/disk-pressure", "node.kubernetes.io/network-unavailable", "node.kubernetes.io/pid-pressure", "node.kubernetes.io/out-of-service", "node.cloudprovider.kubernetes.io/uninitialized", "node.cloudprovider.kubernetes.io/shutdown", "kubernetes.azure.com/scalesetpriority"]
919
- :param str value: Set taint value.
1250
+ :param _builtins.str effect: Set taint effect.
1251
+ :param _builtins.str key: Set taint key. The following taint keys are not allowed: ["node.kubernetes.io/not-ready", "node.kubernetes.io/unreachable", "node.kubernetes.io/unschedulable", "node.kubernetes.io/memory-pressure", "node.kubernetes.io/disk-pressure", "node.kubernetes.io/network-unavailable", "node.kubernetes.io/pid-pressure", "node.kubernetes.io/out-of-service", "node.cloudprovider.kubernetes.io/uninitialized", "node.cloudprovider.kubernetes.io/shutdown", "kubernetes.azure.com/scalesetpriority"]
1252
+ :param _builtins.str value: Set taint value.
920
1253
  """
921
1254
  pulumi.set(__self__, "effect", effect)
922
1255
  pulumi.set(__self__, "key", key)
923
1256
  pulumi.set(__self__, "value", value)
924
1257
 
925
- @property
1258
+ @_builtins.property
926
1259
  @pulumi.getter
927
- def effect(self) -> str:
1260
+ def effect(self) -> _builtins.str:
928
1261
  """
929
1262
  Set taint effect.
930
1263
  """
931
1264
  return pulumi.get(self, "effect")
932
1265
 
933
- @property
1266
+ @_builtins.property
934
1267
  @pulumi.getter
935
- def key(self) -> str:
1268
+ def key(self) -> _builtins.str:
936
1269
  """
937
1270
  Set taint key. The following taint keys are not allowed: ["node.kubernetes.io/not-ready", "node.kubernetes.io/unreachable", "node.kubernetes.io/unschedulable", "node.kubernetes.io/memory-pressure", "node.kubernetes.io/disk-pressure", "node.kubernetes.io/network-unavailable", "node.kubernetes.io/pid-pressure", "node.kubernetes.io/out-of-service", "node.cloudprovider.kubernetes.io/uninitialized", "node.cloudprovider.kubernetes.io/shutdown", "kubernetes.azure.com/scalesetpriority"]
938
1271
  """
939
1272
  return pulumi.get(self, "key")
940
1273
 
941
- @property
1274
+ @_builtins.property
942
1275
  @pulumi.getter
943
- def value(self) -> str:
1276
+ def value(self) -> _builtins.str:
944
1277
  """
945
1278
  Set taint value.
946
1279
  """
@@ -971,12 +1304,12 @@ class OceanNpUpdatePolicy(dict):
971
1304
  return super().get(key, default)
972
1305
 
973
1306
  def __init__(__self__, *,
974
- should_roll: bool,
975
- conditioned_roll: Optional[bool] = None,
1307
+ should_roll: _builtins.bool,
1308
+ conditioned_roll: Optional[_builtins.bool] = None,
976
1309
  roll_config: Optional['outputs.OceanNpUpdatePolicyRollConfig'] = None):
977
1310
  """
978
- :param bool should_roll: If set to true along with the cluster update, roll will be triggered.
979
- :param bool conditioned_roll: Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as availability_zones, max_pods_per_node, enable_node_public_ip, os_disk_size_gb, os_disk_type, os_sku, kubernetes_version, vnet_subnet_ids, pod_subnet_ids, labels, taints and tags).
1311
+ :param _builtins.bool should_roll: If set to true along with the cluster update, roll will be triggered.
1312
+ :param _builtins.bool conditioned_roll: Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as availability_zones, max_pods_per_node, enable_node_public_ip, os_disk_size_gb, os_disk_type, os_sku, kubernetes_version, vnet_subnet_ids, pod_subnet_ids, labels, taints and tags).
980
1313
  :param 'OceanNpUpdatePolicyRollConfigArgs' roll_config: While used, you can control whether the group should perform a deployment after an update to the configuration.
981
1314
  """
982
1315
  pulumi.set(__self__, "should_roll", should_roll)
@@ -985,23 +1318,23 @@ class OceanNpUpdatePolicy(dict):
985
1318
  if roll_config is not None:
986
1319
  pulumi.set(__self__, "roll_config", roll_config)
987
1320
 
988
- @property
1321
+ @_builtins.property
989
1322
  @pulumi.getter(name="shouldRoll")
990
- def should_roll(self) -> bool:
1323
+ def should_roll(self) -> _builtins.bool:
991
1324
  """
992
1325
  If set to true along with the cluster update, roll will be triggered.
993
1326
  """
994
1327
  return pulumi.get(self, "should_roll")
995
1328
 
996
- @property
1329
+ @_builtins.property
997
1330
  @pulumi.getter(name="conditionedRoll")
998
- def conditioned_roll(self) -> Optional[bool]:
1331
+ def conditioned_roll(self) -> Optional[_builtins.bool]:
999
1332
  """
1000
1333
  Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as availability_zones, max_pods_per_node, enable_node_public_ip, os_disk_size_gb, os_disk_type, os_sku, kubernetes_version, vnet_subnet_ids, pod_subnet_ids, labels, taints and tags).
1001
1334
  """
1002
1335
  return pulumi.get(self, "conditioned_roll")
1003
1336
 
1004
- @property
1337
+ @_builtins.property
1005
1338
  @pulumi.getter(name="rollConfig")
1006
1339
  def roll_config(self) -> Optional['outputs.OceanNpUpdatePolicyRollConfig']:
1007
1340
  """
@@ -1042,23 +1375,23 @@ class OceanNpUpdatePolicyRollConfig(dict):
1042
1375
  return super().get(key, default)
1043
1376
 
1044
1377
  def __init__(__self__, *,
1045
- batch_min_healthy_percentage: Optional[int] = None,
1046
- batch_size_percentage: Optional[int] = None,
1047
- comment: Optional[str] = None,
1048
- node_names: Optional[Sequence[str]] = None,
1049
- node_pool_names: Optional[Sequence[str]] = None,
1050
- respect_pdb: Optional[bool] = None,
1051
- respect_restrict_scale_down: Optional[bool] = None,
1052
- vng_ids: Optional[Sequence[str]] = None):
1053
- """
1054
- :param int batch_min_healthy_percentage: Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1055
- :param int batch_size_percentage: Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1056
- :param str comment: Add a comment description for the roll. The comment is limited to 256 chars and optional.
1057
- :param Sequence[str] node_names: List of node names to be rolled. Each identifier is a string. nodeNames can be null, and cannot be used together with nodePoolNames and vngIds.
1058
- :param Sequence[str] node_pool_names: List of node pools to be rolled. Each node pool name is a string. nodePoolNames can be null, and cannot be used together with nodeNames and vngIds.
1059
- :param bool respect_pdb: During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1060
- :param bool respect_restrict_scale_down: During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1061
- :param Sequence[str] vng_ids: List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1378
+ batch_min_healthy_percentage: Optional[_builtins.int] = None,
1379
+ batch_size_percentage: Optional[_builtins.int] = None,
1380
+ comment: Optional[_builtins.str] = None,
1381
+ node_names: Optional[Sequence[_builtins.str]] = None,
1382
+ node_pool_names: Optional[Sequence[_builtins.str]] = None,
1383
+ respect_pdb: Optional[_builtins.bool] = None,
1384
+ respect_restrict_scale_down: Optional[_builtins.bool] = None,
1385
+ vng_ids: Optional[Sequence[_builtins.str]] = None):
1386
+ """
1387
+ :param _builtins.int batch_min_healthy_percentage: Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1388
+ :param _builtins.int batch_size_percentage: Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1389
+ :param _builtins.str comment: Add a comment description for the roll. The comment is limited to 256 chars and optional.
1390
+ :param Sequence[_builtins.str] node_names: List of node names to be rolled. Each identifier is a string. nodeNames can be null, and cannot be used together with nodePoolNames and vngIds.
1391
+ :param Sequence[_builtins.str] node_pool_names: List of node pools to be rolled. Each node pool name is a string. nodePoolNames can be null, and cannot be used together with nodeNames and vngIds.
1392
+ :param _builtins.bool respect_pdb: During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1393
+ :param _builtins.bool respect_restrict_scale_down: During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1394
+ :param Sequence[_builtins.str] vng_ids: List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1062
1395
  """
1063
1396
  if batch_min_healthy_percentage is not None:
1064
1397
  pulumi.set(__self__, "batch_min_healthy_percentage", batch_min_healthy_percentage)
@@ -1077,65 +1410,65 @@ class OceanNpUpdatePolicyRollConfig(dict):
1077
1410
  if vng_ids is not None:
1078
1411
  pulumi.set(__self__, "vng_ids", vng_ids)
1079
1412
 
1080
- @property
1413
+ @_builtins.property
1081
1414
  @pulumi.getter(name="batchMinHealthyPercentage")
1082
- def batch_min_healthy_percentage(self) -> Optional[int]:
1415
+ def batch_min_healthy_percentage(self) -> Optional[_builtins.int]:
1083
1416
  """
1084
1417
  Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1085
1418
  """
1086
1419
  return pulumi.get(self, "batch_min_healthy_percentage")
1087
1420
 
1088
- @property
1421
+ @_builtins.property
1089
1422
  @pulumi.getter(name="batchSizePercentage")
1090
- def batch_size_percentage(self) -> Optional[int]:
1423
+ def batch_size_percentage(self) -> Optional[_builtins.int]:
1091
1424
  """
1092
1425
  Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1093
1426
  """
1094
1427
  return pulumi.get(self, "batch_size_percentage")
1095
1428
 
1096
- @property
1429
+ @_builtins.property
1097
1430
  @pulumi.getter
1098
- def comment(self) -> Optional[str]:
1431
+ def comment(self) -> Optional[_builtins.str]:
1099
1432
  """
1100
1433
  Add a comment description for the roll. The comment is limited to 256 chars and optional.
1101
1434
  """
1102
1435
  return pulumi.get(self, "comment")
1103
1436
 
1104
- @property
1437
+ @_builtins.property
1105
1438
  @pulumi.getter(name="nodeNames")
1106
- def node_names(self) -> Optional[Sequence[str]]:
1439
+ def node_names(self) -> Optional[Sequence[_builtins.str]]:
1107
1440
  """
1108
1441
  List of node names to be rolled. Each identifier is a string. nodeNames can be null, and cannot be used together with nodePoolNames and vngIds.
1109
1442
  """
1110
1443
  return pulumi.get(self, "node_names")
1111
1444
 
1112
- @property
1445
+ @_builtins.property
1113
1446
  @pulumi.getter(name="nodePoolNames")
1114
- def node_pool_names(self) -> Optional[Sequence[str]]:
1447
+ def node_pool_names(self) -> Optional[Sequence[_builtins.str]]:
1115
1448
  """
1116
1449
  List of node pools to be rolled. Each node pool name is a string. nodePoolNames can be null, and cannot be used together with nodeNames and vngIds.
1117
1450
  """
1118
1451
  return pulumi.get(self, "node_pool_names")
1119
1452
 
1120
- @property
1453
+ @_builtins.property
1121
1454
  @pulumi.getter(name="respectPdb")
1122
- def respect_pdb(self) -> Optional[bool]:
1455
+ def respect_pdb(self) -> Optional[_builtins.bool]:
1123
1456
  """
1124
1457
  During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1125
1458
  """
1126
1459
  return pulumi.get(self, "respect_pdb")
1127
1460
 
1128
- @property
1461
+ @_builtins.property
1129
1462
  @pulumi.getter(name="respectRestrictScaleDown")
1130
- def respect_restrict_scale_down(self) -> Optional[bool]:
1463
+ def respect_restrict_scale_down(self) -> Optional[_builtins.bool]:
1131
1464
  """
1132
1465
  During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1133
1466
  """
1134
1467
  return pulumi.get(self, "respect_restrict_scale_down")
1135
1468
 
1136
- @property
1469
+ @_builtins.property
1137
1470
  @pulumi.getter(name="vngIds")
1138
- def vng_ids(self) -> Optional[Sequence[str]]:
1471
+ def vng_ids(self) -> Optional[Sequence[_builtins.str]]:
1139
1472
  """
1140
1473
  List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1141
1474
  """
@@ -1186,37 +1519,37 @@ class OceanNpVirtualNodeGroupFilters(dict):
1186
1519
  return super().get(key, default)
1187
1520
 
1188
1521
  def __init__(__self__, *,
1189
- accelerated_networking: Optional[str] = None,
1190
- architectures: Optional[Sequence[str]] = None,
1191
- disk_performance: Optional[str] = None,
1192
- exclude_series: Optional[Sequence[str]] = None,
1193
- gpu_types: Optional[Sequence[str]] = None,
1194
- max_gpu: Optional[float] = None,
1195
- max_memory_gib: Optional[float] = None,
1196
- max_vcpu: Optional[int] = None,
1197
- min_disk: Optional[int] = None,
1198
- min_gpu: Optional[float] = None,
1199
- min_memory_gib: Optional[float] = None,
1200
- min_nics: Optional[int] = None,
1201
- min_vcpu: Optional[int] = None,
1202
- series: Optional[Sequence[str]] = None,
1203
- vm_types: Optional[Sequence[str]] = None):
1204
- """
1205
- :param str accelerated_networking: In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
1206
- :param Sequence[str] architectures: The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
1207
- :param str disk_performance: The filtered vm sizes will support at least one of the classes from this list.
1208
- :param Sequence[str] exclude_series: Vm sizes belonging to a series from the list will not be available for scaling.
1209
- :param Sequence[str] gpu_types: The filtered gpu types will belong to one of the gpu types from this list.
1210
- :param float max_gpu: Maximum number of GPUs available.
1211
- :param float max_memory_gib: Maximum amount of Memory (GiB).
1212
- :param int max_vcpu: Maximum number of vcpus available.
1213
- :param int min_disk: Minimum number of data disks available.
1214
- :param float min_gpu: Minimum number of GPUs available.
1215
- :param float min_memory_gib: Minimum amount of Memory (GiB).
1216
- :param int min_nics: Minimum number of network interfaces.
1217
- :param int min_vcpu: Minimum number of vcpus available.
1218
- :param Sequence[str] series: Vm sizes belonging to a series from the list will be available for scaling.
1219
- :param Sequence[str] vm_types: The filtered vm types will belong to one of the vm types from this list.
1522
+ accelerated_networking: Optional[_builtins.str] = None,
1523
+ architectures: Optional[Sequence[_builtins.str]] = None,
1524
+ disk_performance: Optional[_builtins.str] = None,
1525
+ exclude_series: Optional[Sequence[_builtins.str]] = None,
1526
+ gpu_types: Optional[Sequence[_builtins.str]] = None,
1527
+ max_gpu: Optional[_builtins.float] = None,
1528
+ max_memory_gib: Optional[_builtins.float] = None,
1529
+ max_vcpu: Optional[_builtins.int] = None,
1530
+ min_disk: Optional[_builtins.int] = None,
1531
+ min_gpu: Optional[_builtins.float] = None,
1532
+ min_memory_gib: Optional[_builtins.float] = None,
1533
+ min_nics: Optional[_builtins.int] = None,
1534
+ min_vcpu: Optional[_builtins.int] = None,
1535
+ series: Optional[Sequence[_builtins.str]] = None,
1536
+ vm_types: Optional[Sequence[_builtins.str]] = None):
1537
+ """
1538
+ :param _builtins.str accelerated_networking: In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
1539
+ :param Sequence[_builtins.str] architectures: The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
1540
+ :param _builtins.str disk_performance: The filtered vm sizes will support at least one of the classes from this list.
1541
+ :param Sequence[_builtins.str] exclude_series: Vm sizes belonging to a series from the list will not be available for scaling.
1542
+ :param Sequence[_builtins.str] gpu_types: The filtered gpu types will belong to one of the gpu types from this list.
1543
+ :param _builtins.float max_gpu: Maximum number of GPUs available.
1544
+ :param _builtins.float max_memory_gib: Maximum amount of Memory (GiB).
1545
+ :param _builtins.int max_vcpu: Maximum number of vcpus available.
1546
+ :param _builtins.int min_disk: Minimum number of data disks available.
1547
+ :param _builtins.float min_gpu: Minimum number of GPUs available.
1548
+ :param _builtins.float min_memory_gib: Minimum amount of Memory (GiB).
1549
+ :param _builtins.int min_nics: Minimum number of network interfaces.
1550
+ :param _builtins.int min_vcpu: Minimum number of vcpus available.
1551
+ :param Sequence[_builtins.str] series: Vm sizes belonging to a series from the list will be available for scaling.
1552
+ :param Sequence[_builtins.str] vm_types: The filtered vm types will belong to one of the vm types from this list.
1220
1553
  """
1221
1554
  if accelerated_networking is not None:
1222
1555
  pulumi.set(__self__, "accelerated_networking", accelerated_networking)
@@ -1249,121 +1582,121 @@ class OceanNpVirtualNodeGroupFilters(dict):
1249
1582
  if vm_types is not None:
1250
1583
  pulumi.set(__self__, "vm_types", vm_types)
1251
1584
 
1252
- @property
1585
+ @_builtins.property
1253
1586
  @pulumi.getter(name="acceleratedNetworking")
1254
- def accelerated_networking(self) -> Optional[str]:
1587
+ def accelerated_networking(self) -> Optional[_builtins.str]:
1255
1588
  """
1256
1589
  In case acceleratedNetworking is set to Enabled, accelerated networking applies only to the VM that enables it.
1257
1590
  """
1258
1591
  return pulumi.get(self, "accelerated_networking")
1259
1592
 
1260
- @property
1593
+ @_builtins.property
1261
1594
  @pulumi.getter
1262
- def architectures(self) -> Optional[Sequence[str]]:
1595
+ def architectures(self) -> Optional[Sequence[_builtins.str]]:
1263
1596
  """
1264
1597
  The filtered vm sizes will support at least one of the architectures from this list. x86_64 includes both intel64 and amd64.
1265
1598
  """
1266
1599
  return pulumi.get(self, "architectures")
1267
1600
 
1268
- @property
1601
+ @_builtins.property
1269
1602
  @pulumi.getter(name="diskPerformance")
1270
- def disk_performance(self) -> Optional[str]:
1603
+ def disk_performance(self) -> Optional[_builtins.str]:
1271
1604
  """
1272
1605
  The filtered vm sizes will support at least one of the classes from this list.
1273
1606
  """
1274
1607
  return pulumi.get(self, "disk_performance")
1275
1608
 
1276
- @property
1609
+ @_builtins.property
1277
1610
  @pulumi.getter(name="excludeSeries")
1278
- def exclude_series(self) -> Optional[Sequence[str]]:
1611
+ def exclude_series(self) -> Optional[Sequence[_builtins.str]]:
1279
1612
  """
1280
1613
  Vm sizes belonging to a series from the list will not be available for scaling.
1281
1614
  """
1282
1615
  return pulumi.get(self, "exclude_series")
1283
1616
 
1284
- @property
1617
+ @_builtins.property
1285
1618
  @pulumi.getter(name="gpuTypes")
1286
- def gpu_types(self) -> Optional[Sequence[str]]:
1619
+ def gpu_types(self) -> Optional[Sequence[_builtins.str]]:
1287
1620
  """
1288
1621
  The filtered gpu types will belong to one of the gpu types from this list.
1289
1622
  """
1290
1623
  return pulumi.get(self, "gpu_types")
1291
1624
 
1292
- @property
1625
+ @_builtins.property
1293
1626
  @pulumi.getter(name="maxGpu")
1294
- def max_gpu(self) -> Optional[float]:
1627
+ def max_gpu(self) -> Optional[_builtins.float]:
1295
1628
  """
1296
1629
  Maximum number of GPUs available.
1297
1630
  """
1298
1631
  return pulumi.get(self, "max_gpu")
1299
1632
 
1300
- @property
1633
+ @_builtins.property
1301
1634
  @pulumi.getter(name="maxMemoryGib")
1302
- def max_memory_gib(self) -> Optional[float]:
1635
+ def max_memory_gib(self) -> Optional[_builtins.float]:
1303
1636
  """
1304
1637
  Maximum amount of Memory (GiB).
1305
1638
  """
1306
1639
  return pulumi.get(self, "max_memory_gib")
1307
1640
 
1308
- @property
1641
+ @_builtins.property
1309
1642
  @pulumi.getter(name="maxVcpu")
1310
- def max_vcpu(self) -> Optional[int]:
1643
+ def max_vcpu(self) -> Optional[_builtins.int]:
1311
1644
  """
1312
1645
  Maximum number of vcpus available.
1313
1646
  """
1314
1647
  return pulumi.get(self, "max_vcpu")
1315
1648
 
1316
- @property
1649
+ @_builtins.property
1317
1650
  @pulumi.getter(name="minDisk")
1318
- def min_disk(self) -> Optional[int]:
1651
+ def min_disk(self) -> Optional[_builtins.int]:
1319
1652
  """
1320
1653
  Minimum number of data disks available.
1321
1654
  """
1322
1655
  return pulumi.get(self, "min_disk")
1323
1656
 
1324
- @property
1657
+ @_builtins.property
1325
1658
  @pulumi.getter(name="minGpu")
1326
- def min_gpu(self) -> Optional[float]:
1659
+ def min_gpu(self) -> Optional[_builtins.float]:
1327
1660
  """
1328
1661
  Minimum number of GPUs available.
1329
1662
  """
1330
1663
  return pulumi.get(self, "min_gpu")
1331
1664
 
1332
- @property
1665
+ @_builtins.property
1333
1666
  @pulumi.getter(name="minMemoryGib")
1334
- def min_memory_gib(self) -> Optional[float]:
1667
+ def min_memory_gib(self) -> Optional[_builtins.float]:
1335
1668
  """
1336
1669
  Minimum amount of Memory (GiB).
1337
1670
  """
1338
1671
  return pulumi.get(self, "min_memory_gib")
1339
1672
 
1340
- @property
1673
+ @_builtins.property
1341
1674
  @pulumi.getter(name="minNics")
1342
- def min_nics(self) -> Optional[int]:
1675
+ def min_nics(self) -> Optional[_builtins.int]:
1343
1676
  """
1344
1677
  Minimum number of network interfaces.
1345
1678
  """
1346
1679
  return pulumi.get(self, "min_nics")
1347
1680
 
1348
- @property
1681
+ @_builtins.property
1349
1682
  @pulumi.getter(name="minVcpu")
1350
- def min_vcpu(self) -> Optional[int]:
1683
+ def min_vcpu(self) -> Optional[_builtins.int]:
1351
1684
  """
1352
1685
  Minimum number of vcpus available.
1353
1686
  """
1354
1687
  return pulumi.get(self, "min_vcpu")
1355
1688
 
1356
- @property
1689
+ @_builtins.property
1357
1690
  @pulumi.getter
1358
- def series(self) -> Optional[Sequence[str]]:
1691
+ def series(self) -> Optional[Sequence[_builtins.str]]:
1359
1692
  """
1360
1693
  Vm sizes belonging to a series from the list will be available for scaling.
1361
1694
  """
1362
1695
  return pulumi.get(self, "series")
1363
1696
 
1364
- @property
1697
+ @_builtins.property
1365
1698
  @pulumi.getter(name="vmTypes")
1366
- def vm_types(self) -> Optional[Sequence[str]]:
1699
+ def vm_types(self) -> Optional[Sequence[_builtins.str]]:
1367
1700
  """
1368
1701
  The filtered vm types will belong to one of the vm types from this list.
1369
1702
  """
@@ -1396,15 +1729,15 @@ class OceanNpVirtualNodeGroupHeadroom(dict):
1396
1729
  return super().get(key, default)
1397
1730
 
1398
1731
  def __init__(__self__, *,
1399
- cpu_per_unit: Optional[int] = None,
1400
- gpu_per_unit: Optional[int] = None,
1401
- memory_per_unit: Optional[int] = None,
1402
- num_of_units: Optional[int] = None):
1732
+ cpu_per_unit: Optional[_builtins.int] = None,
1733
+ gpu_per_unit: Optional[_builtins.int] = None,
1734
+ memory_per_unit: Optional[_builtins.int] = None,
1735
+ num_of_units: Optional[_builtins.int] = None):
1403
1736
  """
1404
- :param int cpu_per_unit: Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
1405
- :param int gpu_per_unit: Amount of GPU to allocate for headroom unit.
1406
- :param int memory_per_unit: Configure the amount of memory (MiB) to allocate the headroom.
1407
- :param int num_of_units: The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
1737
+ :param _builtins.int cpu_per_unit: Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
1738
+ :param _builtins.int gpu_per_unit: Amount of GPU to allocate for headroom unit.
1739
+ :param _builtins.int memory_per_unit: Configure the amount of memory (MiB) to allocate the headroom.
1740
+ :param _builtins.int num_of_units: The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
1408
1741
  """
1409
1742
  if cpu_per_unit is not None:
1410
1743
  pulumi.set(__self__, "cpu_per_unit", cpu_per_unit)
@@ -1415,33 +1748,33 @@ class OceanNpVirtualNodeGroupHeadroom(dict):
1415
1748
  if num_of_units is not None:
1416
1749
  pulumi.set(__self__, "num_of_units", num_of_units)
1417
1750
 
1418
- @property
1751
+ @_builtins.property
1419
1752
  @pulumi.getter(name="cpuPerUnit")
1420
- def cpu_per_unit(self) -> Optional[int]:
1753
+ def cpu_per_unit(self) -> Optional[_builtins.int]:
1421
1754
  """
1422
1755
  Configure the number of CPUs to allocate the headroom. CPUs are denoted in millicores, where 1000 millicores = 1 vCPU.
1423
1756
  """
1424
1757
  return pulumi.get(self, "cpu_per_unit")
1425
1758
 
1426
- @property
1759
+ @_builtins.property
1427
1760
  @pulumi.getter(name="gpuPerUnit")
1428
- def gpu_per_unit(self) -> Optional[int]:
1761
+ def gpu_per_unit(self) -> Optional[_builtins.int]:
1429
1762
  """
1430
1763
  Amount of GPU to allocate for headroom unit.
1431
1764
  """
1432
1765
  return pulumi.get(self, "gpu_per_unit")
1433
1766
 
1434
- @property
1767
+ @_builtins.property
1435
1768
  @pulumi.getter(name="memoryPerUnit")
1436
- def memory_per_unit(self) -> Optional[int]:
1769
+ def memory_per_unit(self) -> Optional[_builtins.int]:
1437
1770
  """
1438
1771
  Configure the amount of memory (MiB) to allocate the headroom.
1439
1772
  """
1440
1773
  return pulumi.get(self, "memory_per_unit")
1441
1774
 
1442
- @property
1775
+ @_builtins.property
1443
1776
  @pulumi.getter(name="numOfUnits")
1444
- def num_of_units(self) -> Optional[int]:
1777
+ def num_of_units(self) -> Optional[_builtins.int]:
1445
1778
  """
1446
1779
  The number of units to retain as headroom, where each unit has the defined headroom CPU and memory.
1447
1780
  """
@@ -1458,7 +1791,7 @@ class OceanNpVirtualNodeGroupLinuxOsConfig(dict):
1458
1791
  if sysctls is not None:
1459
1792
  pulumi.set(__self__, "sysctls", sysctls)
1460
1793
 
1461
- @property
1794
+ @_builtins.property
1462
1795
  @pulumi.getter
1463
1796
  def sysctls(self) -> Optional[Sequence['outputs.OceanNpVirtualNodeGroupLinuxOsConfigSysctl']]:
1464
1797
  """
@@ -1487,56 +1820,142 @@ class OceanNpVirtualNodeGroupLinuxOsConfigSysctl(dict):
1487
1820
  return super().get(key, default)
1488
1821
 
1489
1822
  def __init__(__self__, *,
1490
- vm_max_map_count: Optional[int] = None):
1823
+ vm_max_map_count: Optional[_builtins.int] = None):
1491
1824
  """
1492
- :param int vm_max_map_count: Maximum number of memory map areas a process may have. Can be configured only if OS type is Linux.
1825
+ :param _builtins.int vm_max_map_count: Maximum number of memory map areas a process may have. Can be configured only if OS type is Linux.
1493
1826
  """
1494
1827
  if vm_max_map_count is not None:
1495
1828
  pulumi.set(__self__, "vm_max_map_count", vm_max_map_count)
1496
1829
 
1497
- @property
1830
+ @_builtins.property
1498
1831
  @pulumi.getter(name="vmMaxMapCount")
1499
- def vm_max_map_count(self) -> Optional[int]:
1832
+ def vm_max_map_count(self) -> Optional[_builtins.int]:
1500
1833
  """
1501
1834
  Maximum number of memory map areas a process may have. Can be configured only if OS type is Linux.
1502
1835
  """
1503
1836
  return pulumi.get(self, "vm_max_map_count")
1504
1837
 
1505
1838
 
1839
+ @pulumi.output_type
1840
+ class OceanNpVirtualNodeGroupScheduling(dict):
1841
+ @staticmethod
1842
+ def __key_warning(key: str):
1843
+ suggest = None
1844
+ if key == "shutdownHours":
1845
+ suggest = "shutdown_hours"
1846
+
1847
+ if suggest:
1848
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpVirtualNodeGroupScheduling. Access the value via the '{suggest}' property getter instead.")
1849
+
1850
+ def __getitem__(self, key: str) -> Any:
1851
+ OceanNpVirtualNodeGroupScheduling.__key_warning(key)
1852
+ return super().__getitem__(key)
1853
+
1854
+ def get(self, key: str, default = None) -> Any:
1855
+ OceanNpVirtualNodeGroupScheduling.__key_warning(key)
1856
+ return super().get(key, default)
1857
+
1858
+ def __init__(__self__, *,
1859
+ shutdown_hours: Optional['outputs.OceanNpVirtualNodeGroupSchedulingShutdownHours'] = None):
1860
+ """
1861
+ :param 'OceanNpVirtualNodeGroupSchedulingShutdownHoursArgs' shutdown_hours: An object used to specify times that the nodes in the virtual node group will be stopped.
1862
+ """
1863
+ if shutdown_hours is not None:
1864
+ pulumi.set(__self__, "shutdown_hours", shutdown_hours)
1865
+
1866
+ @_builtins.property
1867
+ @pulumi.getter(name="shutdownHours")
1868
+ def shutdown_hours(self) -> Optional['outputs.OceanNpVirtualNodeGroupSchedulingShutdownHours']:
1869
+ """
1870
+ An object used to specify times that the nodes in the virtual node group will be stopped.
1871
+ """
1872
+ return pulumi.get(self, "shutdown_hours")
1873
+
1874
+
1875
+ @pulumi.output_type
1876
+ class OceanNpVirtualNodeGroupSchedulingShutdownHours(dict):
1877
+ @staticmethod
1878
+ def __key_warning(key: str):
1879
+ suggest = None
1880
+ if key == "isEnabled":
1881
+ suggest = "is_enabled"
1882
+ elif key == "timeWindows":
1883
+ suggest = "time_windows"
1884
+
1885
+ if suggest:
1886
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpVirtualNodeGroupSchedulingShutdownHours. Access the value via the '{suggest}' property getter instead.")
1887
+
1888
+ def __getitem__(self, key: str) -> Any:
1889
+ OceanNpVirtualNodeGroupSchedulingShutdownHours.__key_warning(key)
1890
+ return super().__getitem__(key)
1891
+
1892
+ def get(self, key: str, default = None) -> Any:
1893
+ OceanNpVirtualNodeGroupSchedulingShutdownHours.__key_warning(key)
1894
+ return super().get(key, default)
1895
+
1896
+ def __init__(__self__, *,
1897
+ is_enabled: Optional[_builtins.bool] = None,
1898
+ time_windows: Optional[Sequence[_builtins.str]] = None):
1899
+ """
1900
+ :param _builtins.bool is_enabled: Flag to enable or disable the shutdown hours mechanism. When `false`, the mechanism is deactivated, and the virtual node gorup remains in its current state.
1901
+ :param Sequence[_builtins.str] time_windows: The times that the shutdown hours will apply. Required if isEnabled is true.
1902
+ """
1903
+ if is_enabled is not None:
1904
+ pulumi.set(__self__, "is_enabled", is_enabled)
1905
+ if time_windows is not None:
1906
+ pulumi.set(__self__, "time_windows", time_windows)
1907
+
1908
+ @_builtins.property
1909
+ @pulumi.getter(name="isEnabled")
1910
+ def is_enabled(self) -> Optional[_builtins.bool]:
1911
+ """
1912
+ Flag to enable or disable the shutdown hours mechanism. When `false`, the mechanism is deactivated, and the virtual node gorup remains in its current state.
1913
+ """
1914
+ return pulumi.get(self, "is_enabled")
1915
+
1916
+ @_builtins.property
1917
+ @pulumi.getter(name="timeWindows")
1918
+ def time_windows(self) -> Optional[Sequence[_builtins.str]]:
1919
+ """
1920
+ The times that the shutdown hours will apply. Required if isEnabled is true.
1921
+ """
1922
+ return pulumi.get(self, "time_windows")
1923
+
1924
+
1506
1925
  @pulumi.output_type
1507
1926
  class OceanNpVirtualNodeGroupTaint(dict):
1508
1927
  def __init__(__self__, *,
1509
- effect: str,
1510
- key: str,
1511
- value: str):
1928
+ effect: _builtins.str,
1929
+ key: _builtins.str,
1930
+ value: _builtins.str):
1512
1931
  """
1513
- :param str effect: Set taint effect.
1514
- :param str key: Set taint key. The following are not allowed: "kubernetes.azure.com/scalesetpriority".
1515
- :param str value: Set taint value.
1932
+ :param _builtins.str effect: Set taint effect.
1933
+ :param _builtins.str key: Set taint key. The following are not allowed: "kubernetes.azure.com/scalesetpriority".
1934
+ :param _builtins.str value: Set taint value.
1516
1935
  """
1517
1936
  pulumi.set(__self__, "effect", effect)
1518
1937
  pulumi.set(__self__, "key", key)
1519
1938
  pulumi.set(__self__, "value", value)
1520
1939
 
1521
- @property
1940
+ @_builtins.property
1522
1941
  @pulumi.getter
1523
- def effect(self) -> str:
1942
+ def effect(self) -> _builtins.str:
1524
1943
  """
1525
1944
  Set taint effect.
1526
1945
  """
1527
1946
  return pulumi.get(self, "effect")
1528
1947
 
1529
- @property
1948
+ @_builtins.property
1530
1949
  @pulumi.getter
1531
- def key(self) -> str:
1950
+ def key(self) -> _builtins.str:
1532
1951
  """
1533
1952
  Set taint key. The following are not allowed: "kubernetes.azure.com/scalesetpriority".
1534
1953
  """
1535
1954
  return pulumi.get(self, "key")
1536
1955
 
1537
- @property
1956
+ @_builtins.property
1538
1957
  @pulumi.getter
1539
- def value(self) -> str:
1958
+ def value(self) -> _builtins.str:
1540
1959
  """
1541
1960
  Set taint value.
1542
1961
  """
@@ -1567,12 +1986,12 @@ class OceanNpVirtualNodeGroupUpdatePolicy(dict):
1567
1986
  return super().get(key, default)
1568
1987
 
1569
1988
  def __init__(__self__, *,
1570
- should_roll: bool,
1571
- conditioned_roll: Optional[bool] = None,
1989
+ should_roll: _builtins.bool,
1990
+ conditioned_roll: Optional[_builtins.bool] = None,
1572
1991
  roll_config: Optional['outputs.OceanNpVirtualNodeGroupUpdatePolicyRollConfig'] = None):
1573
1992
  """
1574
- :param bool should_roll: If set to true along with the vng update, roll will be triggered.
1575
- :param bool conditioned_roll: Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as availability_zones, max_pods_per_node, enable_node_public_ip, os_disk_size_gb, os_disk_type, os_sku, kubernetes_version, vnet_subnet_ids, pod_subnet_ids, labels, taints and tags).
1993
+ :param _builtins.bool should_roll: If set to true along with the vng update, roll will be triggered.
1994
+ :param _builtins.bool conditioned_roll: Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as availability_zones, max_pods_per_node, enable_node_public_ip, os_disk_size_gb, os_disk_type, os_sku, kubernetes_version, vnet_subnet_ids, pod_subnet_ids, labels, taints and tags).
1576
1995
  :param 'OceanNpVirtualNodeGroupUpdatePolicyRollConfigArgs' roll_config: While used, you can control whether the group should perform a deployment after an update to the configuration.
1577
1996
  """
1578
1997
  pulumi.set(__self__, "should_roll", should_roll)
@@ -1581,23 +2000,23 @@ class OceanNpVirtualNodeGroupUpdatePolicy(dict):
1581
2000
  if roll_config is not None:
1582
2001
  pulumi.set(__self__, "roll_config", roll_config)
1583
2002
 
1584
- @property
2003
+ @_builtins.property
1585
2004
  @pulumi.getter(name="shouldRoll")
1586
- def should_roll(self) -> bool:
2005
+ def should_roll(self) -> _builtins.bool:
1587
2006
  """
1588
2007
  If set to true along with the vng update, roll will be triggered.
1589
2008
  """
1590
2009
  return pulumi.get(self, "should_roll")
1591
2010
 
1592
- @property
2011
+ @_builtins.property
1593
2012
  @pulumi.getter(name="conditionedRoll")
1594
- def conditioned_roll(self) -> Optional[bool]:
2013
+ def conditioned_roll(self) -> Optional[_builtins.bool]:
1595
2014
  """
1596
2015
  Spot will perform a cluster Roll in accordance with a relevant modification of the cluster’s settings. When set to true , only specific changes in the cluster’s configuration will trigger a cluster roll (such as availability_zones, max_pods_per_node, enable_node_public_ip, os_disk_size_gb, os_disk_type, os_sku, kubernetes_version, vnet_subnet_ids, pod_subnet_ids, labels, taints and tags).
1597
2016
  """
1598
2017
  return pulumi.get(self, "conditioned_roll")
1599
2018
 
1600
- @property
2019
+ @_builtins.property
1601
2020
  @pulumi.getter(name="rollConfig")
1602
2021
  def roll_config(self) -> Optional['outputs.OceanNpVirtualNodeGroupUpdatePolicyRollConfig']:
1603
2022
  """
@@ -1638,23 +2057,23 @@ class OceanNpVirtualNodeGroupUpdatePolicyRollConfig(dict):
1638
2057
  return super().get(key, default)
1639
2058
 
1640
2059
  def __init__(__self__, *,
1641
- batch_min_healthy_percentage: Optional[int] = None,
1642
- batch_size_percentage: Optional[int] = None,
1643
- comment: Optional[str] = None,
1644
- node_names: Optional[Sequence[str]] = None,
1645
- node_pool_names: Optional[Sequence[str]] = None,
1646
- respect_pdb: Optional[bool] = None,
1647
- respect_restrict_scale_down: Optional[bool] = None,
1648
- vng_ids: Optional[Sequence[str]] = None):
1649
- """
1650
- :param int batch_min_healthy_percentage: Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1651
- :param int batch_size_percentage: Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1652
- :param str comment: Add a comment description for the roll. The comment is limited to 256 chars and optional.
1653
- :param Sequence[str] node_names: List of node names to be rolled. Each identifier is a string. nodeNames can be null, and cannot be used together with nodePoolNames and vngIds.
1654
- :param Sequence[str] node_pool_names: List of node pools to be rolled. Each node pool name is a string. nodePoolNames can be null, and cannot be used together with nodeNames and vngIds.
1655
- :param bool respect_pdb: During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1656
- :param bool respect_restrict_scale_down: During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1657
- :param Sequence[str] vng_ids: List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
2060
+ batch_min_healthy_percentage: Optional[_builtins.int] = None,
2061
+ batch_size_percentage: Optional[_builtins.int] = None,
2062
+ comment: Optional[_builtins.str] = None,
2063
+ node_names: Optional[Sequence[_builtins.str]] = None,
2064
+ node_pool_names: Optional[Sequence[_builtins.str]] = None,
2065
+ respect_pdb: Optional[_builtins.bool] = None,
2066
+ respect_restrict_scale_down: Optional[_builtins.bool] = None,
2067
+ vng_ids: Optional[Sequence[_builtins.str]] = None):
2068
+ """
2069
+ :param _builtins.int batch_min_healthy_percentage: Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
2070
+ :param _builtins.int batch_size_percentage: Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
2071
+ :param _builtins.str comment: Add a comment description for the roll. The comment is limited to 256 chars and optional.
2072
+ :param Sequence[_builtins.str] node_names: List of node names to be rolled. Each identifier is a string. nodeNames can be null, and cannot be used together with nodePoolNames and vngIds.
2073
+ :param Sequence[_builtins.str] node_pool_names: List of node pools to be rolled. Each node pool name is a string. nodePoolNames can be null, and cannot be used together with nodeNames and vngIds.
2074
+ :param _builtins.bool respect_pdb: During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
2075
+ :param _builtins.bool respect_restrict_scale_down: During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
2076
+ :param Sequence[_builtins.str] vng_ids: List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1658
2077
  """
1659
2078
  if batch_min_healthy_percentage is not None:
1660
2079
  pulumi.set(__self__, "batch_min_healthy_percentage", batch_min_healthy_percentage)
@@ -1673,68 +2092,144 @@ class OceanNpVirtualNodeGroupUpdatePolicyRollConfig(dict):
1673
2092
  if vng_ids is not None:
1674
2093
  pulumi.set(__self__, "vng_ids", vng_ids)
1675
2094
 
1676
- @property
2095
+ @_builtins.property
1677
2096
  @pulumi.getter(name="batchMinHealthyPercentage")
1678
- def batch_min_healthy_percentage(self) -> Optional[int]:
2097
+ def batch_min_healthy_percentage(self) -> Optional[_builtins.int]:
1679
2098
  """
1680
2099
  Indicates the threshold of minimum healthy nodes in single batch. If the amount of healthy nodes in single batch is under the threshold, the roll will fail. If exists, the parameter value will be in range of 1-100. In case of null as value, the default value in the backend will be 50%. Value of param should represent the number in percentage (%) of the batch.
1681
2100
  """
1682
2101
  return pulumi.get(self, "batch_min_healthy_percentage")
1683
2102
 
1684
- @property
2103
+ @_builtins.property
1685
2104
  @pulumi.getter(name="batchSizePercentage")
1686
- def batch_size_percentage(self) -> Optional[int]:
2105
+ def batch_size_percentage(self) -> Optional[_builtins.int]:
1687
2106
  """
1688
2107
  Value as a percent to set the size of a batch in a roll. Valid values are 0-100. In case of null as value, the default value in the backend will be 20%.
1689
2108
  """
1690
2109
  return pulumi.get(self, "batch_size_percentage")
1691
2110
 
1692
- @property
2111
+ @_builtins.property
1693
2112
  @pulumi.getter
1694
- def comment(self) -> Optional[str]:
2113
+ def comment(self) -> Optional[_builtins.str]:
1695
2114
  """
1696
2115
  Add a comment description for the roll. The comment is limited to 256 chars and optional.
1697
2116
  """
1698
2117
  return pulumi.get(self, "comment")
1699
2118
 
1700
- @property
2119
+ @_builtins.property
1701
2120
  @pulumi.getter(name="nodeNames")
1702
- def node_names(self) -> Optional[Sequence[str]]:
2121
+ def node_names(self) -> Optional[Sequence[_builtins.str]]:
1703
2122
  """
1704
2123
  List of node names to be rolled. Each identifier is a string. nodeNames can be null, and cannot be used together with nodePoolNames and vngIds.
1705
2124
  """
1706
2125
  return pulumi.get(self, "node_names")
1707
2126
 
1708
- @property
2127
+ @_builtins.property
1709
2128
  @pulumi.getter(name="nodePoolNames")
1710
- def node_pool_names(self) -> Optional[Sequence[str]]:
2129
+ def node_pool_names(self) -> Optional[Sequence[_builtins.str]]:
1711
2130
  """
1712
2131
  List of node pools to be rolled. Each node pool name is a string. nodePoolNames can be null, and cannot be used together with nodeNames and vngIds.
1713
2132
  """
1714
2133
  return pulumi.get(self, "node_pool_names")
1715
2134
 
1716
- @property
2135
+ @_builtins.property
1717
2136
  @pulumi.getter(name="respectPdb")
1718
- def respect_pdb(self) -> Optional[bool]:
2137
+ def respect_pdb(self) -> Optional[_builtins.bool]:
1719
2138
  """
1720
2139
  During the roll, if the parameter is set to true we honor PDB during the nodes replacement.
1721
2140
  """
1722
2141
  return pulumi.get(self, "respect_pdb")
1723
2142
 
1724
- @property
2143
+ @_builtins.property
1725
2144
  @pulumi.getter(name="respectRestrictScaleDown")
1726
- def respect_restrict_scale_down(self) -> Optional[bool]:
2145
+ def respect_restrict_scale_down(self) -> Optional[_builtins.bool]:
1727
2146
  """
1728
2147
  During the roll, if the parameter is set to true we honor Restrict Scale Down label during the nodes replacement.
1729
2148
  """
1730
2149
  return pulumi.get(self, "respect_restrict_scale_down")
1731
2150
 
1732
- @property
2151
+ @_builtins.property
1733
2152
  @pulumi.getter(name="vngIds")
1734
- def vng_ids(self) -> Optional[Sequence[str]]:
2153
+ def vng_ids(self) -> Optional[Sequence[_builtins.str]]:
1735
2154
  """
1736
2155
  List of virtual node group identifiers to be rolled. Each identifier is a string. vngIds can be null, and cannot be used together with nodeNames and nodePoolNames.
1737
2156
  """
1738
2157
  return pulumi.get(self, "vng_ids")
1739
2158
 
1740
2159
 
2160
+ @pulumi.output_type
2161
+ class OceanNpVngTemplateScheduling(dict):
2162
+ @staticmethod
2163
+ def __key_warning(key: str):
2164
+ suggest = None
2165
+ if key == "vngTemplateShutdownHours":
2166
+ suggest = "vng_template_shutdown_hours"
2167
+
2168
+ if suggest:
2169
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpVngTemplateScheduling. Access the value via the '{suggest}' property getter instead.")
2170
+
2171
+ def __getitem__(self, key: str) -> Any:
2172
+ OceanNpVngTemplateScheduling.__key_warning(key)
2173
+ return super().__getitem__(key)
2174
+
2175
+ def get(self, key: str, default = None) -> Any:
2176
+ OceanNpVngTemplateScheduling.__key_warning(key)
2177
+ return super().get(key, default)
2178
+
2179
+ def __init__(__self__, *,
2180
+ vng_template_shutdown_hours: Optional['outputs.OceanNpVngTemplateSchedulingVngTemplateShutdownHours'] = None):
2181
+ if vng_template_shutdown_hours is not None:
2182
+ pulumi.set(__self__, "vng_template_shutdown_hours", vng_template_shutdown_hours)
2183
+
2184
+ @_builtins.property
2185
+ @pulumi.getter(name="vngTemplateShutdownHours")
2186
+ def vng_template_shutdown_hours(self) -> Optional['outputs.OceanNpVngTemplateSchedulingVngTemplateShutdownHours']:
2187
+ return pulumi.get(self, "vng_template_shutdown_hours")
2188
+
2189
+
2190
+ @pulumi.output_type
2191
+ class OceanNpVngTemplateSchedulingVngTemplateShutdownHours(dict):
2192
+ @staticmethod
2193
+ def __key_warning(key: str):
2194
+ suggest = None
2195
+ if key == "isEnabled":
2196
+ suggest = "is_enabled"
2197
+ elif key == "timeWindows":
2198
+ suggest = "time_windows"
2199
+
2200
+ if suggest:
2201
+ pulumi.log.warn(f"Key '{key}' not found in OceanNpVngTemplateSchedulingVngTemplateShutdownHours. Access the value via the '{suggest}' property getter instead.")
2202
+
2203
+ def __getitem__(self, key: str) -> Any:
2204
+ OceanNpVngTemplateSchedulingVngTemplateShutdownHours.__key_warning(key)
2205
+ return super().__getitem__(key)
2206
+
2207
+ def get(self, key: str, default = None) -> Any:
2208
+ OceanNpVngTemplateSchedulingVngTemplateShutdownHours.__key_warning(key)
2209
+ return super().get(key, default)
2210
+
2211
+ def __init__(__self__, *,
2212
+ is_enabled: Optional[_builtins.bool] = None,
2213
+ time_windows: Optional[Sequence[_builtins.str]] = None):
2214
+ """
2215
+ :param Sequence[_builtins.str] time_windows: The times that the shutdown hours will apply. Required if `is_enabled` is true.
2216
+ """
2217
+ if is_enabled is not None:
2218
+ pulumi.set(__self__, "is_enabled", is_enabled)
2219
+ if time_windows is not None:
2220
+ pulumi.set(__self__, "time_windows", time_windows)
2221
+
2222
+ @_builtins.property
2223
+ @pulumi.getter(name="isEnabled")
2224
+ def is_enabled(self) -> Optional[_builtins.bool]:
2225
+ return pulumi.get(self, "is_enabled")
2226
+
2227
+ @_builtins.property
2228
+ @pulumi.getter(name="timeWindows")
2229
+ def time_windows(self) -> Optional[Sequence[_builtins.str]]:
2230
+ """
2231
+ The times that the shutdown hours will apply. Required if `is_enabled` is true.
2232
+ """
2233
+ return pulumi.get(self, "time_windows")
2234
+
2235
+