pulumi-spotinst 3.115.0a1742873189__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 +11 -1
  2. pulumi_spotinst/_inputs.py +2206 -1519
  3. pulumi_spotinst/_utilities.py +1 -1
  4. pulumi_spotinst/account.py +20 -19
  5. pulumi_spotinst/aws/__init__.py +2 -1
  6. pulumi_spotinst/aws/_inputs.py +3991 -3619
  7. pulumi_spotinst/aws/account.py +20 -19
  8. pulumi_spotinst/aws/beanstalk.py +254 -177
  9. pulumi_spotinst/aws/credentials.py +37 -36
  10. pulumi_spotinst/aws/elastigroup.py +938 -950
  11. pulumi_spotinst/aws/managed_instance.py +507 -506
  12. pulumi_spotinst/aws/mr_scalar.py +658 -653
  13. pulumi_spotinst/aws/ocean.py +624 -529
  14. pulumi_spotinst/aws/ocean_extended_resource_definition.py +37 -36
  15. pulumi_spotinst/aws/ocean_launch_spec.py +395 -300
  16. pulumi_spotinst/aws/outputs.py +2631 -2371
  17. pulumi_spotinst/aws/suspension.py +23 -22
  18. pulumi_spotinst/azure/__init__.py +2 -1
  19. pulumi_spotinst/azure/_inputs.py +607 -607
  20. pulumi_spotinst/azure/ocean_np.py +387 -386
  21. pulumi_spotinst/azure/ocean_np_virtual_node_group.py +323 -322
  22. pulumi_spotinst/azure/outputs.py +411 -411
  23. pulumi_spotinst/config/__init__.py +2 -1
  24. pulumi_spotinst/config/__init__.pyi +2 -2
  25. pulumi_spotinst/config/vars.py +6 -6
  26. pulumi_spotinst/credentials_azure.py +139 -89
  27. pulumi_spotinst/credentials_gcp.py +190 -189
  28. pulumi_spotinst/data_integration.py +40 -39
  29. pulumi_spotinst/ecs/__init__.py +2 -1
  30. pulumi_spotinst/ecs/_inputs.py +584 -584
  31. pulumi_spotinst/ecs/ocean.py +628 -415
  32. pulumi_spotinst/ecs/ocean_launch_spec.py +197 -196
  33. pulumi_spotinst/ecs/outputs.py +394 -394
  34. pulumi_spotinst/elastigroup_azure_v3.py +326 -325
  35. pulumi_spotinst/gcp/__init__.py +2 -1
  36. pulumi_spotinst/gcp/_inputs.py +573 -499
  37. pulumi_spotinst/gcp/elastigroup.py +491 -482
  38. pulumi_spotinst/gcp/outputs.py +395 -330
  39. pulumi_spotinst/gke/__init__.py +2 -1
  40. pulumi_spotinst/gke/_inputs.py +1120 -895
  41. pulumi_spotinst/gke/elastigroup.py +341 -340
  42. pulumi_spotinst/gke/ocean_import.py +204 -203
  43. pulumi_spotinst/gke/ocean_launch_spec.py +285 -213
  44. pulumi_spotinst/gke/ocean_launch_spec_import.py +37 -36
  45. pulumi_spotinst/gke/outputs.py +769 -583
  46. pulumi_spotinst/health_check.py +106 -65
  47. pulumi_spotinst/notification_center.py +344 -0
  48. pulumi_spotinst/ocean_right_sizing_rule.py +424 -77
  49. pulumi_spotinst/oceancd/__init__.py +2 -1
  50. pulumi_spotinst/oceancd/_inputs.py +764 -764
  51. pulumi_spotinst/oceancd/outputs.py +526 -526
  52. pulumi_spotinst/oceancd/rollout_spec.py +35 -34
  53. pulumi_spotinst/oceancd/strategy.py +22 -21
  54. pulumi_spotinst/oceancd/verification_provider.py +52 -51
  55. pulumi_spotinst/oceancd/verification_template.py +26 -25
  56. pulumi_spotinst/organization/__init__.py +2 -1
  57. pulumi_spotinst/organization/_inputs.py +68 -68
  58. pulumi_spotinst/organization/outputs.py +46 -46
  59. pulumi_spotinst/organization/policy.py +40 -39
  60. pulumi_spotinst/organization/programmatic_user.py +60 -59
  61. pulumi_spotinst/organization/user.py +108 -107
  62. pulumi_spotinst/organization/user_group.py +57 -56
  63. pulumi_spotinst/outputs.py +1472 -932
  64. pulumi_spotinst/provider.py +61 -40
  65. pulumi_spotinst/pulumi-plugin.json +1 -1
  66. pulumi_spotinst/spark/__init__.py +2 -1
  67. pulumi_spotinst/spark/_inputs.py +104 -104
  68. pulumi_spotinst/spark/ocean.py +38 -37
  69. pulumi_spotinst/spark/ocean_virtual_node_group.py +29 -28
  70. pulumi_spotinst/spark/outputs.py +72 -72
  71. pulumi_spotinst/stateful_node_azure.py +318 -343
  72. pulumi_spotinst/subscription.py +88 -87
  73. {pulumi_spotinst-3.115.0a1742873189.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/METADATA +3 -3
  74. pulumi_spotinst-3.128.0a1767140134.dist-info/RECORD +77 -0
  75. {pulumi_spotinst-3.115.0a1742873189.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/WHEEL +1 -1
  76. pulumi_spotinst-3.115.0a1742873189.dist-info/RECORD +0 -76
  77. {pulumi_spotinst-3.115.0a1742873189.dist-info → pulumi_spotinst-3.128.0a1767140134.dist-info}/top_level.txt +0 -0
@@ -1,8 +1,8 @@
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
7
  import sys
8
8
  import pulumi
@@ -21,64 +21,64 @@ __all__ = ['OceanNpArgs', 'OceanNp']
21
21
  @pulumi.input_type
22
22
  class OceanNpArgs:
23
23
  def __init__(__self__, *,
24
- aks_cluster_name: pulumi.Input[str],
25
- aks_infrastructure_resource_group_name: pulumi.Input[str],
26
- aks_region: pulumi.Input[str],
27
- aks_resource_group_name: pulumi.Input[str],
28
- availability_zones: pulumi.Input[Sequence[pulumi.Input[str]]],
29
- controller_cluster_id: pulumi.Input[str],
24
+ aks_cluster_name: pulumi.Input[_builtins.str],
25
+ aks_infrastructure_resource_group_name: pulumi.Input[_builtins.str],
26
+ aks_region: pulumi.Input[_builtins.str],
27
+ aks_resource_group_name: pulumi.Input[_builtins.str],
28
+ availability_zones: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]],
29
+ controller_cluster_id: pulumi.Input[_builtins.str],
30
30
  autoscaler: Optional[pulumi.Input['OceanNpAutoscalerArgs']] = None,
31
- enable_node_public_ip: Optional[pulumi.Input[bool]] = None,
32
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
31
+ enable_node_public_ip: Optional[pulumi.Input[_builtins.bool]] = None,
32
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
33
33
  filters: Optional[pulumi.Input['OceanNpFiltersArgs']] = None,
34
34
  headrooms: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]]] = None,
35
35
  health: Optional[pulumi.Input['OceanNpHealthArgs']] = None,
36
- kubernetes_version: Optional[pulumi.Input[str]] = None,
37
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
36
+ kubernetes_version: Optional[pulumi.Input[_builtins.str]] = None,
37
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
38
38
  linux_os_configs: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]]] = None,
39
39
  logging: Optional[pulumi.Input['OceanNpLoggingArgs']] = None,
40
- max_count: Optional[pulumi.Input[int]] = None,
41
- max_pods_per_node: Optional[pulumi.Input[int]] = None,
42
- min_count: Optional[pulumi.Input[int]] = None,
43
- name: Optional[pulumi.Input[str]] = None,
44
- os_disk_size_gb: Optional[pulumi.Input[int]] = None,
45
- os_disk_type: Optional[pulumi.Input[str]] = None,
46
- os_sku: Optional[pulumi.Input[str]] = None,
47
- os_type: Optional[pulumi.Input[str]] = None,
48
- pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
40
+ max_count: Optional[pulumi.Input[_builtins.int]] = None,
41
+ max_pods_per_node: Optional[pulumi.Input[_builtins.int]] = None,
42
+ min_count: Optional[pulumi.Input[_builtins.int]] = None,
43
+ name: Optional[pulumi.Input[_builtins.str]] = None,
44
+ os_disk_size_gb: Optional[pulumi.Input[_builtins.int]] = None,
45
+ os_disk_type: Optional[pulumi.Input[_builtins.str]] = None,
46
+ os_sku: Optional[pulumi.Input[_builtins.str]] = None,
47
+ os_type: Optional[pulumi.Input[_builtins.str]] = None,
48
+ pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
49
49
  scheduling: Optional[pulumi.Input['OceanNpSchedulingArgs']] = None,
50
- spot_percentage: Optional[pulumi.Input[int]] = None,
51
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
50
+ spot_percentage: Optional[pulumi.Input[_builtins.int]] = None,
51
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
52
52
  taints: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]]] = None,
53
53
  update_policy: Optional[pulumi.Input['OceanNpUpdatePolicyArgs']] = None,
54
- vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
54
+ vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
55
55
  vng_template_scheduling: Optional[pulumi.Input['OceanNpVngTemplateSchedulingArgs']] = None):
56
56
  """
57
57
  The set of arguments for constructing a OceanNp resource.
58
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
59
- :param pulumi.Input[str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
58
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
59
+ :param pulumi.Input[_builtins.str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
60
60
  :param pulumi.Input['OceanNpAutoscalerArgs'] autoscaler: The Ocean Kubernetes Autoscaler object.
61
- :param pulumi.Input[bool] enable_node_public_ip: Enable node public IP.
62
- :param pulumi.Input[bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
61
+ :param pulumi.Input[_builtins.bool] enable_node_public_ip: Enable node public IP.
62
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
63
63
  :param pulumi.Input['OceanNpFiltersArgs'] filters: Filters for the VM sizes that can be launched from the virtual node group.
64
64
  :param pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]] headrooms: Specify the custom headroom per VNG. Provide a list of headroom objects.
65
65
  :param pulumi.Input['OceanNpHealthArgs'] health: The Ocean AKS Health object.
66
- :param pulumi.Input[str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
67
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
66
+ :param pulumi.Input[_builtins.str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
67
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
68
68
  :param pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]] linux_os_configs: Custom Linux OS configuration.
69
69
  :param pulumi.Input['OceanNpLoggingArgs'] logging: The Ocean AKS Logging Object.
70
- :param pulumi.Input[int] max_count: Maximum node count limit.
71
- :param pulumi.Input[int] max_pods_per_node: The maximum number of pods per node in the node pools.
72
- :param pulumi.Input[int] min_count: Minimum node count limit.
73
- :param pulumi.Input[str] name: Add a name for the Ocean cluster.
74
- :param pulumi.Input[int] os_disk_size_gb: The size of the OS disk in GB.
75
- :param pulumi.Input[str] os_disk_type: The type of the OS disk.
76
- :param pulumi.Input[str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
77
- :param pulumi.Input[str] os_type: The OS type of the OS disk. Can't be modified once set.
78
- :param pulumi.Input[Sequence[pulumi.Input[str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
79
- :param pulumi.Input[int] spot_percentage: Percentage of spot VMs to maintain.
70
+ :param pulumi.Input[_builtins.int] max_count: Maximum node count limit.
71
+ :param pulumi.Input[_builtins.int] max_pods_per_node: The maximum number of pods per node in the node pools.
72
+ :param pulumi.Input[_builtins.int] min_count: Minimum node count limit.
73
+ :param pulumi.Input[_builtins.str] name: Add a name for the Ocean cluster.
74
+ :param pulumi.Input[_builtins.int] os_disk_size_gb: The size of the OS disk in GB.
75
+ :param pulumi.Input[_builtins.str] os_disk_type: The type of the OS disk.
76
+ :param pulumi.Input[_builtins.str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
77
+ :param pulumi.Input[_builtins.str] os_type: The OS type of the OS disk. Can't be modified once set.
78
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
79
+ :param pulumi.Input[_builtins.int] spot_percentage: Percentage of spot VMs to maintain.
80
80
  :param pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]] taints: Add taints to a virtual node group. Only custom user taints are allowed, and not [Kubernetes well-known taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) or Azure AKS [ScaleSetPrioirty (Spot VM) taint](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool). For all Spot VMs, AKS injects a taint kubernetes.azure.com/scalesetpriority=spot:NoSchedule, to ensure that only workloads that can handle interruptions are scheduled on Spot nodes. To [schedule a pod to run on Spot node](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool#schedule-a-pod-to-run-on-the-spot-node), add a toleration but dont include the nodeAffinity (not supported for Spot Ocean), this will prevent the pod from being scheduled using Spot Ocean.
81
- :param pulumi.Input[Sequence[pulumi.Input[str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
81
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
82
82
  :param pulumi.Input['OceanNpVngTemplateSchedulingArgs'] vng_template_scheduling: An object used to specify times when the virtual node group will turn off all its node pools. Once the shutdown time will be over, the virtual node group will return to its previous state.
83
83
  """
84
84
  pulumi.set(__self__, "aks_cluster_name", aks_cluster_name)
@@ -140,67 +140,67 @@ class OceanNpArgs:
140
140
  if vng_template_scheduling is not None:
141
141
  pulumi.set(__self__, "vng_template_scheduling", vng_template_scheduling)
142
142
 
143
- @property
143
+ @_builtins.property
144
144
  @pulumi.getter(name="aksClusterName")
145
- def aks_cluster_name(self) -> pulumi.Input[str]:
145
+ def aks_cluster_name(self) -> pulumi.Input[_builtins.str]:
146
146
  return pulumi.get(self, "aks_cluster_name")
147
147
 
148
148
  @aks_cluster_name.setter
149
- def aks_cluster_name(self, value: pulumi.Input[str]):
149
+ def aks_cluster_name(self, value: pulumi.Input[_builtins.str]):
150
150
  pulumi.set(self, "aks_cluster_name", value)
151
151
 
152
- @property
152
+ @_builtins.property
153
153
  @pulumi.getter(name="aksInfrastructureResourceGroupName")
154
- def aks_infrastructure_resource_group_name(self) -> pulumi.Input[str]:
154
+ def aks_infrastructure_resource_group_name(self) -> pulumi.Input[_builtins.str]:
155
155
  return pulumi.get(self, "aks_infrastructure_resource_group_name")
156
156
 
157
157
  @aks_infrastructure_resource_group_name.setter
158
- def aks_infrastructure_resource_group_name(self, value: pulumi.Input[str]):
158
+ def aks_infrastructure_resource_group_name(self, value: pulumi.Input[_builtins.str]):
159
159
  pulumi.set(self, "aks_infrastructure_resource_group_name", value)
160
160
 
161
- @property
161
+ @_builtins.property
162
162
  @pulumi.getter(name="aksRegion")
163
- def aks_region(self) -> pulumi.Input[str]:
163
+ def aks_region(self) -> pulumi.Input[_builtins.str]:
164
164
  return pulumi.get(self, "aks_region")
165
165
 
166
166
  @aks_region.setter
167
- def aks_region(self, value: pulumi.Input[str]):
167
+ def aks_region(self, value: pulumi.Input[_builtins.str]):
168
168
  pulumi.set(self, "aks_region", value)
169
169
 
170
- @property
170
+ @_builtins.property
171
171
  @pulumi.getter(name="aksResourceGroupName")
172
- def aks_resource_group_name(self) -> pulumi.Input[str]:
172
+ def aks_resource_group_name(self) -> pulumi.Input[_builtins.str]:
173
173
  return pulumi.get(self, "aks_resource_group_name")
174
174
 
175
175
  @aks_resource_group_name.setter
176
- def aks_resource_group_name(self, value: pulumi.Input[str]):
176
+ def aks_resource_group_name(self, value: pulumi.Input[_builtins.str]):
177
177
  pulumi.set(self, "aks_resource_group_name", value)
178
178
 
179
- @property
179
+ @_builtins.property
180
180
  @pulumi.getter(name="availabilityZones")
181
- def availability_zones(self) -> pulumi.Input[Sequence[pulumi.Input[str]]]:
181
+ def availability_zones(self) -> pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]:
182
182
  """
183
183
  An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
184
184
  """
185
185
  return pulumi.get(self, "availability_zones")
186
186
 
187
187
  @availability_zones.setter
188
- def availability_zones(self, value: pulumi.Input[Sequence[pulumi.Input[str]]]):
188
+ def availability_zones(self, value: pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]):
189
189
  pulumi.set(self, "availability_zones", value)
190
190
 
191
- @property
191
+ @_builtins.property
192
192
  @pulumi.getter(name="controllerClusterId")
193
- def controller_cluster_id(self) -> pulumi.Input[str]:
193
+ def controller_cluster_id(self) -> pulumi.Input[_builtins.str]:
194
194
  """
195
195
  Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
196
196
  """
197
197
  return pulumi.get(self, "controller_cluster_id")
198
198
 
199
199
  @controller_cluster_id.setter
200
- def controller_cluster_id(self, value: pulumi.Input[str]):
200
+ def controller_cluster_id(self, value: pulumi.Input[_builtins.str]):
201
201
  pulumi.set(self, "controller_cluster_id", value)
202
202
 
203
- @property
203
+ @_builtins.property
204
204
  @pulumi.getter
205
205
  def autoscaler(self) -> Optional[pulumi.Input['OceanNpAutoscalerArgs']]:
206
206
  """
@@ -212,31 +212,31 @@ class OceanNpArgs:
212
212
  def autoscaler(self, value: Optional[pulumi.Input['OceanNpAutoscalerArgs']]):
213
213
  pulumi.set(self, "autoscaler", value)
214
214
 
215
- @property
215
+ @_builtins.property
216
216
  @pulumi.getter(name="enableNodePublicIp")
217
- def enable_node_public_ip(self) -> Optional[pulumi.Input[bool]]:
217
+ def enable_node_public_ip(self) -> Optional[pulumi.Input[_builtins.bool]]:
218
218
  """
219
219
  Enable node public IP.
220
220
  """
221
221
  return pulumi.get(self, "enable_node_public_ip")
222
222
 
223
223
  @enable_node_public_ip.setter
224
- def enable_node_public_ip(self, value: Optional[pulumi.Input[bool]]):
224
+ def enable_node_public_ip(self, value: Optional[pulumi.Input[_builtins.bool]]):
225
225
  pulumi.set(self, "enable_node_public_ip", value)
226
226
 
227
- @property
227
+ @_builtins.property
228
228
  @pulumi.getter(name="fallbackToOndemand")
229
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
229
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[_builtins.bool]]:
230
230
  """
231
231
  If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
232
232
  """
233
233
  return pulumi.get(self, "fallback_to_ondemand")
234
234
 
235
235
  @fallback_to_ondemand.setter
236
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
236
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[_builtins.bool]]):
237
237
  pulumi.set(self, "fallback_to_ondemand", value)
238
238
 
239
- @property
239
+ @_builtins.property
240
240
  @pulumi.getter
241
241
  def filters(self) -> Optional[pulumi.Input['OceanNpFiltersArgs']]:
242
242
  """
@@ -248,7 +248,7 @@ class OceanNpArgs:
248
248
  def filters(self, value: Optional[pulumi.Input['OceanNpFiltersArgs']]):
249
249
  pulumi.set(self, "filters", value)
250
250
 
251
- @property
251
+ @_builtins.property
252
252
  @pulumi.getter
253
253
  def headrooms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]]]:
254
254
  """
@@ -260,7 +260,7 @@ class OceanNpArgs:
260
260
  def headrooms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]]]):
261
261
  pulumi.set(self, "headrooms", value)
262
262
 
263
- @property
263
+ @_builtins.property
264
264
  @pulumi.getter
265
265
  def health(self) -> Optional[pulumi.Input['OceanNpHealthArgs']]:
266
266
  """
@@ -272,31 +272,31 @@ class OceanNpArgs:
272
272
  def health(self, value: Optional[pulumi.Input['OceanNpHealthArgs']]):
273
273
  pulumi.set(self, "health", value)
274
274
 
275
- @property
275
+ @_builtins.property
276
276
  @pulumi.getter(name="kubernetesVersion")
277
- def kubernetes_version(self) -> Optional[pulumi.Input[str]]:
277
+ def kubernetes_version(self) -> Optional[pulumi.Input[_builtins.str]]:
278
278
  """
279
279
  The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
280
280
  """
281
281
  return pulumi.get(self, "kubernetes_version")
282
282
 
283
283
  @kubernetes_version.setter
284
- def kubernetes_version(self, value: Optional[pulumi.Input[str]]):
284
+ def kubernetes_version(self, value: Optional[pulumi.Input[_builtins.str]]):
285
285
  pulumi.set(self, "kubernetes_version", value)
286
286
 
287
- @property
287
+ @_builtins.property
288
288
  @pulumi.getter
289
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
289
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
290
290
  """
291
291
  An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
292
292
  """
293
293
  return pulumi.get(self, "labels")
294
294
 
295
295
  @labels.setter
296
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
296
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
297
297
  pulumi.set(self, "labels", value)
298
298
 
299
- @property
299
+ @_builtins.property
300
300
  @pulumi.getter(name="linuxOsConfigs")
301
301
  def linux_os_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]]]:
302
302
  """
@@ -308,7 +308,7 @@ class OceanNpArgs:
308
308
  def linux_os_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]]]):
309
309
  pulumi.set(self, "linux_os_configs", value)
310
310
 
311
- @property
311
+ @_builtins.property
312
312
  @pulumi.getter
313
313
  def logging(self) -> Optional[pulumi.Input['OceanNpLoggingArgs']]:
314
314
  """
@@ -320,115 +320,115 @@ class OceanNpArgs:
320
320
  def logging(self, value: Optional[pulumi.Input['OceanNpLoggingArgs']]):
321
321
  pulumi.set(self, "logging", value)
322
322
 
323
- @property
323
+ @_builtins.property
324
324
  @pulumi.getter(name="maxCount")
325
- def max_count(self) -> Optional[pulumi.Input[int]]:
325
+ def max_count(self) -> Optional[pulumi.Input[_builtins.int]]:
326
326
  """
327
327
  Maximum node count limit.
328
328
  """
329
329
  return pulumi.get(self, "max_count")
330
330
 
331
331
  @max_count.setter
332
- def max_count(self, value: Optional[pulumi.Input[int]]):
332
+ def max_count(self, value: Optional[pulumi.Input[_builtins.int]]):
333
333
  pulumi.set(self, "max_count", value)
334
334
 
335
- @property
335
+ @_builtins.property
336
336
  @pulumi.getter(name="maxPodsPerNode")
337
- def max_pods_per_node(self) -> Optional[pulumi.Input[int]]:
337
+ def max_pods_per_node(self) -> Optional[pulumi.Input[_builtins.int]]:
338
338
  """
339
339
  The maximum number of pods per node in the node pools.
340
340
  """
341
341
  return pulumi.get(self, "max_pods_per_node")
342
342
 
343
343
  @max_pods_per_node.setter
344
- def max_pods_per_node(self, value: Optional[pulumi.Input[int]]):
344
+ def max_pods_per_node(self, value: Optional[pulumi.Input[_builtins.int]]):
345
345
  pulumi.set(self, "max_pods_per_node", value)
346
346
 
347
- @property
347
+ @_builtins.property
348
348
  @pulumi.getter(name="minCount")
349
- def min_count(self) -> Optional[pulumi.Input[int]]:
349
+ def min_count(self) -> Optional[pulumi.Input[_builtins.int]]:
350
350
  """
351
351
  Minimum node count limit.
352
352
  """
353
353
  return pulumi.get(self, "min_count")
354
354
 
355
355
  @min_count.setter
356
- def min_count(self, value: Optional[pulumi.Input[int]]):
356
+ def min_count(self, value: Optional[pulumi.Input[_builtins.int]]):
357
357
  pulumi.set(self, "min_count", value)
358
358
 
359
- @property
359
+ @_builtins.property
360
360
  @pulumi.getter
361
- def name(self) -> Optional[pulumi.Input[str]]:
361
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
362
362
  """
363
363
  Add a name for the Ocean cluster.
364
364
  """
365
365
  return pulumi.get(self, "name")
366
366
 
367
367
  @name.setter
368
- def name(self, value: Optional[pulumi.Input[str]]):
368
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
369
369
  pulumi.set(self, "name", value)
370
370
 
371
- @property
371
+ @_builtins.property
372
372
  @pulumi.getter(name="osDiskSizeGb")
373
- def os_disk_size_gb(self) -> Optional[pulumi.Input[int]]:
373
+ def os_disk_size_gb(self) -> Optional[pulumi.Input[_builtins.int]]:
374
374
  """
375
375
  The size of the OS disk in GB.
376
376
  """
377
377
  return pulumi.get(self, "os_disk_size_gb")
378
378
 
379
379
  @os_disk_size_gb.setter
380
- def os_disk_size_gb(self, value: Optional[pulumi.Input[int]]):
380
+ def os_disk_size_gb(self, value: Optional[pulumi.Input[_builtins.int]]):
381
381
  pulumi.set(self, "os_disk_size_gb", value)
382
382
 
383
- @property
383
+ @_builtins.property
384
384
  @pulumi.getter(name="osDiskType")
385
- def os_disk_type(self) -> Optional[pulumi.Input[str]]:
385
+ def os_disk_type(self) -> Optional[pulumi.Input[_builtins.str]]:
386
386
  """
387
387
  The type of the OS disk.
388
388
  """
389
389
  return pulumi.get(self, "os_disk_type")
390
390
 
391
391
  @os_disk_type.setter
392
- def os_disk_type(self, value: Optional[pulumi.Input[str]]):
392
+ def os_disk_type(self, value: Optional[pulumi.Input[_builtins.str]]):
393
393
  pulumi.set(self, "os_disk_type", value)
394
394
 
395
- @property
395
+ @_builtins.property
396
396
  @pulumi.getter(name="osSku")
397
- def os_sku(self) -> Optional[pulumi.Input[str]]:
397
+ def os_sku(self) -> Optional[pulumi.Input[_builtins.str]]:
398
398
  """
399
399
  The OS SKU of the OS type. Must correlate with the os type.
400
400
  """
401
401
  return pulumi.get(self, "os_sku")
402
402
 
403
403
  @os_sku.setter
404
- def os_sku(self, value: Optional[pulumi.Input[str]]):
404
+ def os_sku(self, value: Optional[pulumi.Input[_builtins.str]]):
405
405
  pulumi.set(self, "os_sku", value)
406
406
 
407
- @property
407
+ @_builtins.property
408
408
  @pulumi.getter(name="osType")
409
- def os_type(self) -> Optional[pulumi.Input[str]]:
409
+ def os_type(self) -> Optional[pulumi.Input[_builtins.str]]:
410
410
  """
411
411
  The OS type of the OS disk. Can't be modified once set.
412
412
  """
413
413
  return pulumi.get(self, "os_type")
414
414
 
415
415
  @os_type.setter
416
- def os_type(self, value: Optional[pulumi.Input[str]]):
416
+ def os_type(self, value: Optional[pulumi.Input[_builtins.str]]):
417
417
  pulumi.set(self, "os_type", value)
418
418
 
419
- @property
419
+ @_builtins.property
420
420
  @pulumi.getter(name="podSubnetIds")
421
- def pod_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
421
+ def pod_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
422
422
  """
423
423
  The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
424
424
  """
425
425
  return pulumi.get(self, "pod_subnet_ids")
426
426
 
427
427
  @pod_subnet_ids.setter
428
- def pod_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
428
+ def pod_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
429
429
  pulumi.set(self, "pod_subnet_ids", value)
430
430
 
431
- @property
431
+ @_builtins.property
432
432
  @pulumi.getter
433
433
  def scheduling(self) -> Optional[pulumi.Input['OceanNpSchedulingArgs']]:
434
434
  return pulumi.get(self, "scheduling")
@@ -437,28 +437,28 @@ class OceanNpArgs:
437
437
  def scheduling(self, value: Optional[pulumi.Input['OceanNpSchedulingArgs']]):
438
438
  pulumi.set(self, "scheduling", value)
439
439
 
440
- @property
440
+ @_builtins.property
441
441
  @pulumi.getter(name="spotPercentage")
442
- def spot_percentage(self) -> Optional[pulumi.Input[int]]:
442
+ def spot_percentage(self) -> Optional[pulumi.Input[_builtins.int]]:
443
443
  """
444
444
  Percentage of spot VMs to maintain.
445
445
  """
446
446
  return pulumi.get(self, "spot_percentage")
447
447
 
448
448
  @spot_percentage.setter
449
- def spot_percentage(self, value: Optional[pulumi.Input[int]]):
449
+ def spot_percentage(self, value: Optional[pulumi.Input[_builtins.int]]):
450
450
  pulumi.set(self, "spot_percentage", value)
451
451
 
452
- @property
452
+ @_builtins.property
453
453
  @pulumi.getter
454
- def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
454
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
455
455
  return pulumi.get(self, "tags")
456
456
 
457
457
  @tags.setter
458
- def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
458
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
459
459
  pulumi.set(self, "tags", value)
460
460
 
461
- @property
461
+ @_builtins.property
462
462
  @pulumi.getter
463
463
  def taints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]]]:
464
464
  """
@@ -470,7 +470,7 @@ class OceanNpArgs:
470
470
  def taints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]]]):
471
471
  pulumi.set(self, "taints", value)
472
472
 
473
- @property
473
+ @_builtins.property
474
474
  @pulumi.getter(name="updatePolicy")
475
475
  def update_policy(self) -> Optional[pulumi.Input['OceanNpUpdatePolicyArgs']]:
476
476
  return pulumi.get(self, "update_policy")
@@ -479,19 +479,19 @@ class OceanNpArgs:
479
479
  def update_policy(self, value: Optional[pulumi.Input['OceanNpUpdatePolicyArgs']]):
480
480
  pulumi.set(self, "update_policy", value)
481
481
 
482
- @property
482
+ @_builtins.property
483
483
  @pulumi.getter(name="vnetSubnetIds")
484
- def vnet_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
484
+ def vnet_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
485
485
  """
486
486
  The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
487
487
  """
488
488
  return pulumi.get(self, "vnet_subnet_ids")
489
489
 
490
490
  @vnet_subnet_ids.setter
491
- def vnet_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
491
+ def vnet_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
492
492
  pulumi.set(self, "vnet_subnet_ids", value)
493
493
 
494
- @property
494
+ @_builtins.property
495
495
  @pulumi.getter(name="vngTemplateScheduling")
496
496
  def vng_template_scheduling(self) -> Optional[pulumi.Input['OceanNpVngTemplateSchedulingArgs']]:
497
497
  """
@@ -507,64 +507,64 @@ class OceanNpArgs:
507
507
  @pulumi.input_type
508
508
  class _OceanNpState:
509
509
  def __init__(__self__, *,
510
- aks_cluster_name: Optional[pulumi.Input[str]] = None,
511
- aks_infrastructure_resource_group_name: Optional[pulumi.Input[str]] = None,
512
- aks_region: Optional[pulumi.Input[str]] = None,
513
- aks_resource_group_name: Optional[pulumi.Input[str]] = None,
510
+ aks_cluster_name: Optional[pulumi.Input[_builtins.str]] = None,
511
+ aks_infrastructure_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
512
+ aks_region: Optional[pulumi.Input[_builtins.str]] = None,
513
+ aks_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
514
514
  autoscaler: Optional[pulumi.Input['OceanNpAutoscalerArgs']] = None,
515
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
516
- controller_cluster_id: Optional[pulumi.Input[str]] = None,
517
- enable_node_public_ip: Optional[pulumi.Input[bool]] = None,
518
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
515
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
516
+ controller_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
517
+ enable_node_public_ip: Optional[pulumi.Input[_builtins.bool]] = None,
518
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
519
519
  filters: Optional[pulumi.Input['OceanNpFiltersArgs']] = None,
520
520
  headrooms: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]]] = None,
521
521
  health: Optional[pulumi.Input['OceanNpHealthArgs']] = None,
522
- kubernetes_version: Optional[pulumi.Input[str]] = None,
523
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
522
+ kubernetes_version: Optional[pulumi.Input[_builtins.str]] = None,
523
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
524
524
  linux_os_configs: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]]] = None,
525
525
  logging: Optional[pulumi.Input['OceanNpLoggingArgs']] = None,
526
- max_count: Optional[pulumi.Input[int]] = None,
527
- max_pods_per_node: Optional[pulumi.Input[int]] = None,
528
- min_count: Optional[pulumi.Input[int]] = None,
529
- name: Optional[pulumi.Input[str]] = None,
530
- os_disk_size_gb: Optional[pulumi.Input[int]] = None,
531
- os_disk_type: Optional[pulumi.Input[str]] = None,
532
- os_sku: Optional[pulumi.Input[str]] = None,
533
- os_type: Optional[pulumi.Input[str]] = None,
534
- pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
526
+ max_count: Optional[pulumi.Input[_builtins.int]] = None,
527
+ max_pods_per_node: Optional[pulumi.Input[_builtins.int]] = None,
528
+ min_count: Optional[pulumi.Input[_builtins.int]] = None,
529
+ name: Optional[pulumi.Input[_builtins.str]] = None,
530
+ os_disk_size_gb: Optional[pulumi.Input[_builtins.int]] = None,
531
+ os_disk_type: Optional[pulumi.Input[_builtins.str]] = None,
532
+ os_sku: Optional[pulumi.Input[_builtins.str]] = None,
533
+ os_type: Optional[pulumi.Input[_builtins.str]] = None,
534
+ pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
535
535
  scheduling: Optional[pulumi.Input['OceanNpSchedulingArgs']] = None,
536
- spot_percentage: Optional[pulumi.Input[int]] = None,
537
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
536
+ spot_percentage: Optional[pulumi.Input[_builtins.int]] = None,
537
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
538
538
  taints: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]]] = None,
539
539
  update_policy: Optional[pulumi.Input['OceanNpUpdatePolicyArgs']] = None,
540
- vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
540
+ vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
541
541
  vng_template_scheduling: Optional[pulumi.Input['OceanNpVngTemplateSchedulingArgs']] = None):
542
542
  """
543
543
  Input properties used for looking up and filtering OceanNp resources.
544
544
  :param pulumi.Input['OceanNpAutoscalerArgs'] autoscaler: The Ocean Kubernetes Autoscaler object.
545
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
546
- :param pulumi.Input[str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
547
- :param pulumi.Input[bool] enable_node_public_ip: Enable node public IP.
548
- :param pulumi.Input[bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
545
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
546
+ :param pulumi.Input[_builtins.str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
547
+ :param pulumi.Input[_builtins.bool] enable_node_public_ip: Enable node public IP.
548
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
549
549
  :param pulumi.Input['OceanNpFiltersArgs'] filters: Filters for the VM sizes that can be launched from the virtual node group.
550
550
  :param pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]] headrooms: Specify the custom headroom per VNG. Provide a list of headroom objects.
551
551
  :param pulumi.Input['OceanNpHealthArgs'] health: The Ocean AKS Health object.
552
- :param pulumi.Input[str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
553
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
552
+ :param pulumi.Input[_builtins.str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
553
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
554
554
  :param pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]] linux_os_configs: Custom Linux OS configuration.
555
555
  :param pulumi.Input['OceanNpLoggingArgs'] logging: The Ocean AKS Logging Object.
556
- :param pulumi.Input[int] max_count: Maximum node count limit.
557
- :param pulumi.Input[int] max_pods_per_node: The maximum number of pods per node in the node pools.
558
- :param pulumi.Input[int] min_count: Minimum node count limit.
559
- :param pulumi.Input[str] name: Add a name for the Ocean cluster.
560
- :param pulumi.Input[int] os_disk_size_gb: The size of the OS disk in GB.
561
- :param pulumi.Input[str] os_disk_type: The type of the OS disk.
562
- :param pulumi.Input[str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
563
- :param pulumi.Input[str] os_type: The OS type of the OS disk. Can't be modified once set.
564
- :param pulumi.Input[Sequence[pulumi.Input[str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
565
- :param pulumi.Input[int] spot_percentage: Percentage of spot VMs to maintain.
556
+ :param pulumi.Input[_builtins.int] max_count: Maximum node count limit.
557
+ :param pulumi.Input[_builtins.int] max_pods_per_node: The maximum number of pods per node in the node pools.
558
+ :param pulumi.Input[_builtins.int] min_count: Minimum node count limit.
559
+ :param pulumi.Input[_builtins.str] name: Add a name for the Ocean cluster.
560
+ :param pulumi.Input[_builtins.int] os_disk_size_gb: The size of the OS disk in GB.
561
+ :param pulumi.Input[_builtins.str] os_disk_type: The type of the OS disk.
562
+ :param pulumi.Input[_builtins.str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
563
+ :param pulumi.Input[_builtins.str] os_type: The OS type of the OS disk. Can't be modified once set.
564
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
565
+ :param pulumi.Input[_builtins.int] spot_percentage: Percentage of spot VMs to maintain.
566
566
  :param pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]] taints: Add taints to a virtual node group. Only custom user taints are allowed, and not [Kubernetes well-known taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) or Azure AKS [ScaleSetPrioirty (Spot VM) taint](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool). For all Spot VMs, AKS injects a taint kubernetes.azure.com/scalesetpriority=spot:NoSchedule, to ensure that only workloads that can handle interruptions are scheduled on Spot nodes. To [schedule a pod to run on Spot node](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool#schedule-a-pod-to-run-on-the-spot-node), add a toleration but dont include the nodeAffinity (not supported for Spot Ocean), this will prevent the pod from being scheduled using Spot Ocean.
567
- :param pulumi.Input[Sequence[pulumi.Input[str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
567
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
568
568
  :param pulumi.Input['OceanNpVngTemplateSchedulingArgs'] vng_template_scheduling: An object used to specify times when the virtual node group will turn off all its node pools. Once the shutdown time will be over, the virtual node group will return to its previous state.
569
569
  """
570
570
  if aks_cluster_name is not None:
@@ -632,43 +632,43 @@ class _OceanNpState:
632
632
  if vng_template_scheduling is not None:
633
633
  pulumi.set(__self__, "vng_template_scheduling", vng_template_scheduling)
634
634
 
635
- @property
635
+ @_builtins.property
636
636
  @pulumi.getter(name="aksClusterName")
637
- def aks_cluster_name(self) -> Optional[pulumi.Input[str]]:
637
+ def aks_cluster_name(self) -> Optional[pulumi.Input[_builtins.str]]:
638
638
  return pulumi.get(self, "aks_cluster_name")
639
639
 
640
640
  @aks_cluster_name.setter
641
- def aks_cluster_name(self, value: Optional[pulumi.Input[str]]):
641
+ def aks_cluster_name(self, value: Optional[pulumi.Input[_builtins.str]]):
642
642
  pulumi.set(self, "aks_cluster_name", value)
643
643
 
644
- @property
644
+ @_builtins.property
645
645
  @pulumi.getter(name="aksInfrastructureResourceGroupName")
646
- def aks_infrastructure_resource_group_name(self) -> Optional[pulumi.Input[str]]:
646
+ def aks_infrastructure_resource_group_name(self) -> Optional[pulumi.Input[_builtins.str]]:
647
647
  return pulumi.get(self, "aks_infrastructure_resource_group_name")
648
648
 
649
649
  @aks_infrastructure_resource_group_name.setter
650
- def aks_infrastructure_resource_group_name(self, value: Optional[pulumi.Input[str]]):
650
+ def aks_infrastructure_resource_group_name(self, value: Optional[pulumi.Input[_builtins.str]]):
651
651
  pulumi.set(self, "aks_infrastructure_resource_group_name", value)
652
652
 
653
- @property
653
+ @_builtins.property
654
654
  @pulumi.getter(name="aksRegion")
655
- def aks_region(self) -> Optional[pulumi.Input[str]]:
655
+ def aks_region(self) -> Optional[pulumi.Input[_builtins.str]]:
656
656
  return pulumi.get(self, "aks_region")
657
657
 
658
658
  @aks_region.setter
659
- def aks_region(self, value: Optional[pulumi.Input[str]]):
659
+ def aks_region(self, value: Optional[pulumi.Input[_builtins.str]]):
660
660
  pulumi.set(self, "aks_region", value)
661
661
 
662
- @property
662
+ @_builtins.property
663
663
  @pulumi.getter(name="aksResourceGroupName")
664
- def aks_resource_group_name(self) -> Optional[pulumi.Input[str]]:
664
+ def aks_resource_group_name(self) -> Optional[pulumi.Input[_builtins.str]]:
665
665
  return pulumi.get(self, "aks_resource_group_name")
666
666
 
667
667
  @aks_resource_group_name.setter
668
- def aks_resource_group_name(self, value: Optional[pulumi.Input[str]]):
668
+ def aks_resource_group_name(self, value: Optional[pulumi.Input[_builtins.str]]):
669
669
  pulumi.set(self, "aks_resource_group_name", value)
670
670
 
671
- @property
671
+ @_builtins.property
672
672
  @pulumi.getter
673
673
  def autoscaler(self) -> Optional[pulumi.Input['OceanNpAutoscalerArgs']]:
674
674
  """
@@ -680,55 +680,55 @@ class _OceanNpState:
680
680
  def autoscaler(self, value: Optional[pulumi.Input['OceanNpAutoscalerArgs']]):
681
681
  pulumi.set(self, "autoscaler", value)
682
682
 
683
- @property
683
+ @_builtins.property
684
684
  @pulumi.getter(name="availabilityZones")
685
- def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
685
+ def availability_zones(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
686
686
  """
687
687
  An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
688
688
  """
689
689
  return pulumi.get(self, "availability_zones")
690
690
 
691
691
  @availability_zones.setter
692
- def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
692
+ def availability_zones(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
693
693
  pulumi.set(self, "availability_zones", value)
694
694
 
695
- @property
695
+ @_builtins.property
696
696
  @pulumi.getter(name="controllerClusterId")
697
- def controller_cluster_id(self) -> Optional[pulumi.Input[str]]:
697
+ def controller_cluster_id(self) -> Optional[pulumi.Input[_builtins.str]]:
698
698
  """
699
699
  Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
700
700
  """
701
701
  return pulumi.get(self, "controller_cluster_id")
702
702
 
703
703
  @controller_cluster_id.setter
704
- def controller_cluster_id(self, value: Optional[pulumi.Input[str]]):
704
+ def controller_cluster_id(self, value: Optional[pulumi.Input[_builtins.str]]):
705
705
  pulumi.set(self, "controller_cluster_id", value)
706
706
 
707
- @property
707
+ @_builtins.property
708
708
  @pulumi.getter(name="enableNodePublicIp")
709
- def enable_node_public_ip(self) -> Optional[pulumi.Input[bool]]:
709
+ def enable_node_public_ip(self) -> Optional[pulumi.Input[_builtins.bool]]:
710
710
  """
711
711
  Enable node public IP.
712
712
  """
713
713
  return pulumi.get(self, "enable_node_public_ip")
714
714
 
715
715
  @enable_node_public_ip.setter
716
- def enable_node_public_ip(self, value: Optional[pulumi.Input[bool]]):
716
+ def enable_node_public_ip(self, value: Optional[pulumi.Input[_builtins.bool]]):
717
717
  pulumi.set(self, "enable_node_public_ip", value)
718
718
 
719
- @property
719
+ @_builtins.property
720
720
  @pulumi.getter(name="fallbackToOndemand")
721
- def fallback_to_ondemand(self) -> Optional[pulumi.Input[bool]]:
721
+ def fallback_to_ondemand(self) -> Optional[pulumi.Input[_builtins.bool]]:
722
722
  """
723
723
  If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
724
724
  """
725
725
  return pulumi.get(self, "fallback_to_ondemand")
726
726
 
727
727
  @fallback_to_ondemand.setter
728
- def fallback_to_ondemand(self, value: Optional[pulumi.Input[bool]]):
728
+ def fallback_to_ondemand(self, value: Optional[pulumi.Input[_builtins.bool]]):
729
729
  pulumi.set(self, "fallback_to_ondemand", value)
730
730
 
731
- @property
731
+ @_builtins.property
732
732
  @pulumi.getter
733
733
  def filters(self) -> Optional[pulumi.Input['OceanNpFiltersArgs']]:
734
734
  """
@@ -740,7 +740,7 @@ class _OceanNpState:
740
740
  def filters(self, value: Optional[pulumi.Input['OceanNpFiltersArgs']]):
741
741
  pulumi.set(self, "filters", value)
742
742
 
743
- @property
743
+ @_builtins.property
744
744
  @pulumi.getter
745
745
  def headrooms(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]]]:
746
746
  """
@@ -752,7 +752,7 @@ class _OceanNpState:
752
752
  def headrooms(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpHeadroomArgs']]]]):
753
753
  pulumi.set(self, "headrooms", value)
754
754
 
755
- @property
755
+ @_builtins.property
756
756
  @pulumi.getter
757
757
  def health(self) -> Optional[pulumi.Input['OceanNpHealthArgs']]:
758
758
  """
@@ -764,31 +764,31 @@ class _OceanNpState:
764
764
  def health(self, value: Optional[pulumi.Input['OceanNpHealthArgs']]):
765
765
  pulumi.set(self, "health", value)
766
766
 
767
- @property
767
+ @_builtins.property
768
768
  @pulumi.getter(name="kubernetesVersion")
769
- def kubernetes_version(self) -> Optional[pulumi.Input[str]]:
769
+ def kubernetes_version(self) -> Optional[pulumi.Input[_builtins.str]]:
770
770
  """
771
771
  The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
772
772
  """
773
773
  return pulumi.get(self, "kubernetes_version")
774
774
 
775
775
  @kubernetes_version.setter
776
- def kubernetes_version(self, value: Optional[pulumi.Input[str]]):
776
+ def kubernetes_version(self, value: Optional[pulumi.Input[_builtins.str]]):
777
777
  pulumi.set(self, "kubernetes_version", value)
778
778
 
779
- @property
779
+ @_builtins.property
780
780
  @pulumi.getter
781
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
781
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
782
782
  """
783
783
  An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
784
784
  """
785
785
  return pulumi.get(self, "labels")
786
786
 
787
787
  @labels.setter
788
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
788
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
789
789
  pulumi.set(self, "labels", value)
790
790
 
791
- @property
791
+ @_builtins.property
792
792
  @pulumi.getter(name="linuxOsConfigs")
793
793
  def linux_os_configs(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]]]:
794
794
  """
@@ -800,7 +800,7 @@ class _OceanNpState:
800
800
  def linux_os_configs(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpLinuxOsConfigArgs']]]]):
801
801
  pulumi.set(self, "linux_os_configs", value)
802
802
 
803
- @property
803
+ @_builtins.property
804
804
  @pulumi.getter
805
805
  def logging(self) -> Optional[pulumi.Input['OceanNpLoggingArgs']]:
806
806
  """
@@ -812,115 +812,115 @@ class _OceanNpState:
812
812
  def logging(self, value: Optional[pulumi.Input['OceanNpLoggingArgs']]):
813
813
  pulumi.set(self, "logging", value)
814
814
 
815
- @property
815
+ @_builtins.property
816
816
  @pulumi.getter(name="maxCount")
817
- def max_count(self) -> Optional[pulumi.Input[int]]:
817
+ def max_count(self) -> Optional[pulumi.Input[_builtins.int]]:
818
818
  """
819
819
  Maximum node count limit.
820
820
  """
821
821
  return pulumi.get(self, "max_count")
822
822
 
823
823
  @max_count.setter
824
- def max_count(self, value: Optional[pulumi.Input[int]]):
824
+ def max_count(self, value: Optional[pulumi.Input[_builtins.int]]):
825
825
  pulumi.set(self, "max_count", value)
826
826
 
827
- @property
827
+ @_builtins.property
828
828
  @pulumi.getter(name="maxPodsPerNode")
829
- def max_pods_per_node(self) -> Optional[pulumi.Input[int]]:
829
+ def max_pods_per_node(self) -> Optional[pulumi.Input[_builtins.int]]:
830
830
  """
831
831
  The maximum number of pods per node in the node pools.
832
832
  """
833
833
  return pulumi.get(self, "max_pods_per_node")
834
834
 
835
835
  @max_pods_per_node.setter
836
- def max_pods_per_node(self, value: Optional[pulumi.Input[int]]):
836
+ def max_pods_per_node(self, value: Optional[pulumi.Input[_builtins.int]]):
837
837
  pulumi.set(self, "max_pods_per_node", value)
838
838
 
839
- @property
839
+ @_builtins.property
840
840
  @pulumi.getter(name="minCount")
841
- def min_count(self) -> Optional[pulumi.Input[int]]:
841
+ def min_count(self) -> Optional[pulumi.Input[_builtins.int]]:
842
842
  """
843
843
  Minimum node count limit.
844
844
  """
845
845
  return pulumi.get(self, "min_count")
846
846
 
847
847
  @min_count.setter
848
- def min_count(self, value: Optional[pulumi.Input[int]]):
848
+ def min_count(self, value: Optional[pulumi.Input[_builtins.int]]):
849
849
  pulumi.set(self, "min_count", value)
850
850
 
851
- @property
851
+ @_builtins.property
852
852
  @pulumi.getter
853
- def name(self) -> Optional[pulumi.Input[str]]:
853
+ def name(self) -> Optional[pulumi.Input[_builtins.str]]:
854
854
  """
855
855
  Add a name for the Ocean cluster.
856
856
  """
857
857
  return pulumi.get(self, "name")
858
858
 
859
859
  @name.setter
860
- def name(self, value: Optional[pulumi.Input[str]]):
860
+ def name(self, value: Optional[pulumi.Input[_builtins.str]]):
861
861
  pulumi.set(self, "name", value)
862
862
 
863
- @property
863
+ @_builtins.property
864
864
  @pulumi.getter(name="osDiskSizeGb")
865
- def os_disk_size_gb(self) -> Optional[pulumi.Input[int]]:
865
+ def os_disk_size_gb(self) -> Optional[pulumi.Input[_builtins.int]]:
866
866
  """
867
867
  The size of the OS disk in GB.
868
868
  """
869
869
  return pulumi.get(self, "os_disk_size_gb")
870
870
 
871
871
  @os_disk_size_gb.setter
872
- def os_disk_size_gb(self, value: Optional[pulumi.Input[int]]):
872
+ def os_disk_size_gb(self, value: Optional[pulumi.Input[_builtins.int]]):
873
873
  pulumi.set(self, "os_disk_size_gb", value)
874
874
 
875
- @property
875
+ @_builtins.property
876
876
  @pulumi.getter(name="osDiskType")
877
- def os_disk_type(self) -> Optional[pulumi.Input[str]]:
877
+ def os_disk_type(self) -> Optional[pulumi.Input[_builtins.str]]:
878
878
  """
879
879
  The type of the OS disk.
880
880
  """
881
881
  return pulumi.get(self, "os_disk_type")
882
882
 
883
883
  @os_disk_type.setter
884
- def os_disk_type(self, value: Optional[pulumi.Input[str]]):
884
+ def os_disk_type(self, value: Optional[pulumi.Input[_builtins.str]]):
885
885
  pulumi.set(self, "os_disk_type", value)
886
886
 
887
- @property
887
+ @_builtins.property
888
888
  @pulumi.getter(name="osSku")
889
- def os_sku(self) -> Optional[pulumi.Input[str]]:
889
+ def os_sku(self) -> Optional[pulumi.Input[_builtins.str]]:
890
890
  """
891
891
  The OS SKU of the OS type. Must correlate with the os type.
892
892
  """
893
893
  return pulumi.get(self, "os_sku")
894
894
 
895
895
  @os_sku.setter
896
- def os_sku(self, value: Optional[pulumi.Input[str]]):
896
+ def os_sku(self, value: Optional[pulumi.Input[_builtins.str]]):
897
897
  pulumi.set(self, "os_sku", value)
898
898
 
899
- @property
899
+ @_builtins.property
900
900
  @pulumi.getter(name="osType")
901
- def os_type(self) -> Optional[pulumi.Input[str]]:
901
+ def os_type(self) -> Optional[pulumi.Input[_builtins.str]]:
902
902
  """
903
903
  The OS type of the OS disk. Can't be modified once set.
904
904
  """
905
905
  return pulumi.get(self, "os_type")
906
906
 
907
907
  @os_type.setter
908
- def os_type(self, value: Optional[pulumi.Input[str]]):
908
+ def os_type(self, value: Optional[pulumi.Input[_builtins.str]]):
909
909
  pulumi.set(self, "os_type", value)
910
910
 
911
- @property
911
+ @_builtins.property
912
912
  @pulumi.getter(name="podSubnetIds")
913
- def pod_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
913
+ def pod_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
914
914
  """
915
915
  The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
916
916
  """
917
917
  return pulumi.get(self, "pod_subnet_ids")
918
918
 
919
919
  @pod_subnet_ids.setter
920
- def pod_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
920
+ def pod_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
921
921
  pulumi.set(self, "pod_subnet_ids", value)
922
922
 
923
- @property
923
+ @_builtins.property
924
924
  @pulumi.getter
925
925
  def scheduling(self) -> Optional[pulumi.Input['OceanNpSchedulingArgs']]:
926
926
  return pulumi.get(self, "scheduling")
@@ -929,28 +929,28 @@ class _OceanNpState:
929
929
  def scheduling(self, value: Optional[pulumi.Input['OceanNpSchedulingArgs']]):
930
930
  pulumi.set(self, "scheduling", value)
931
931
 
932
- @property
932
+ @_builtins.property
933
933
  @pulumi.getter(name="spotPercentage")
934
- def spot_percentage(self) -> Optional[pulumi.Input[int]]:
934
+ def spot_percentage(self) -> Optional[pulumi.Input[_builtins.int]]:
935
935
  """
936
936
  Percentage of spot VMs to maintain.
937
937
  """
938
938
  return pulumi.get(self, "spot_percentage")
939
939
 
940
940
  @spot_percentage.setter
941
- def spot_percentage(self, value: Optional[pulumi.Input[int]]):
941
+ def spot_percentage(self, value: Optional[pulumi.Input[_builtins.int]]):
942
942
  pulumi.set(self, "spot_percentage", value)
943
943
 
944
- @property
944
+ @_builtins.property
945
945
  @pulumi.getter
946
- def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
946
+ def tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]:
947
947
  return pulumi.get(self, "tags")
948
948
 
949
949
  @tags.setter
950
- def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
950
+ def tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
951
951
  pulumi.set(self, "tags", value)
952
952
 
953
- @property
953
+ @_builtins.property
954
954
  @pulumi.getter
955
955
  def taints(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]]]:
956
956
  """
@@ -962,7 +962,7 @@ class _OceanNpState:
962
962
  def taints(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['OceanNpTaintArgs']]]]):
963
963
  pulumi.set(self, "taints", value)
964
964
 
965
- @property
965
+ @_builtins.property
966
966
  @pulumi.getter(name="updatePolicy")
967
967
  def update_policy(self) -> Optional[pulumi.Input['OceanNpUpdatePolicyArgs']]:
968
968
  return pulumi.get(self, "update_policy")
@@ -971,19 +971,19 @@ class _OceanNpState:
971
971
  def update_policy(self, value: Optional[pulumi.Input['OceanNpUpdatePolicyArgs']]):
972
972
  pulumi.set(self, "update_policy", value)
973
973
 
974
- @property
974
+ @_builtins.property
975
975
  @pulumi.getter(name="vnetSubnetIds")
976
- def vnet_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
976
+ def vnet_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]:
977
977
  """
978
978
  The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
979
979
  """
980
980
  return pulumi.get(self, "vnet_subnet_ids")
981
981
 
982
982
  @vnet_subnet_ids.setter
983
- def vnet_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
983
+ def vnet_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]]):
984
984
  pulumi.set(self, "vnet_subnet_ids", value)
985
985
 
986
- @property
986
+ @_builtins.property
987
987
  @pulumi.getter(name="vngTemplateScheduling")
988
988
  def vng_template_scheduling(self) -> Optional[pulumi.Input['OceanNpVngTemplateSchedulingArgs']]:
989
989
  """
@@ -996,42 +996,43 @@ class _OceanNpState:
996
996
  pulumi.set(self, "vng_template_scheduling", value)
997
997
 
998
998
 
999
+ @pulumi.type_token("spotinst:azure/oceanNp:OceanNp")
999
1000
  class OceanNp(pulumi.CustomResource):
1000
1001
  @overload
1001
1002
  def __init__(__self__,
1002
1003
  resource_name: str,
1003
1004
  opts: Optional[pulumi.ResourceOptions] = None,
1004
- aks_cluster_name: Optional[pulumi.Input[str]] = None,
1005
- aks_infrastructure_resource_group_name: Optional[pulumi.Input[str]] = None,
1006
- aks_region: Optional[pulumi.Input[str]] = None,
1007
- aks_resource_group_name: Optional[pulumi.Input[str]] = None,
1005
+ aks_cluster_name: Optional[pulumi.Input[_builtins.str]] = None,
1006
+ aks_infrastructure_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
1007
+ aks_region: Optional[pulumi.Input[_builtins.str]] = None,
1008
+ aks_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
1008
1009
  autoscaler: Optional[pulumi.Input[Union['OceanNpAutoscalerArgs', 'OceanNpAutoscalerArgsDict']]] = None,
1009
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1010
- controller_cluster_id: Optional[pulumi.Input[str]] = None,
1011
- enable_node_public_ip: Optional[pulumi.Input[bool]] = None,
1012
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1010
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1011
+ controller_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
1012
+ enable_node_public_ip: Optional[pulumi.Input[_builtins.bool]] = None,
1013
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1013
1014
  filters: Optional[pulumi.Input[Union['OceanNpFiltersArgs', 'OceanNpFiltersArgsDict']]] = None,
1014
1015
  headrooms: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpHeadroomArgs', 'OceanNpHeadroomArgsDict']]]]] = None,
1015
1016
  health: Optional[pulumi.Input[Union['OceanNpHealthArgs', 'OceanNpHealthArgsDict']]] = None,
1016
- kubernetes_version: Optional[pulumi.Input[str]] = None,
1017
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1017
+ kubernetes_version: Optional[pulumi.Input[_builtins.str]] = None,
1018
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1018
1019
  linux_os_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpLinuxOsConfigArgs', 'OceanNpLinuxOsConfigArgsDict']]]]] = None,
1019
1020
  logging: Optional[pulumi.Input[Union['OceanNpLoggingArgs', 'OceanNpLoggingArgsDict']]] = None,
1020
- max_count: Optional[pulumi.Input[int]] = None,
1021
- max_pods_per_node: Optional[pulumi.Input[int]] = None,
1022
- min_count: Optional[pulumi.Input[int]] = None,
1023
- name: Optional[pulumi.Input[str]] = None,
1024
- os_disk_size_gb: Optional[pulumi.Input[int]] = None,
1025
- os_disk_type: Optional[pulumi.Input[str]] = None,
1026
- os_sku: Optional[pulumi.Input[str]] = None,
1027
- os_type: Optional[pulumi.Input[str]] = None,
1028
- pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1021
+ max_count: Optional[pulumi.Input[_builtins.int]] = None,
1022
+ max_pods_per_node: Optional[pulumi.Input[_builtins.int]] = None,
1023
+ min_count: Optional[pulumi.Input[_builtins.int]] = None,
1024
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1025
+ os_disk_size_gb: Optional[pulumi.Input[_builtins.int]] = None,
1026
+ os_disk_type: Optional[pulumi.Input[_builtins.str]] = None,
1027
+ os_sku: Optional[pulumi.Input[_builtins.str]] = None,
1028
+ os_type: Optional[pulumi.Input[_builtins.str]] = None,
1029
+ pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1029
1030
  scheduling: Optional[pulumi.Input[Union['OceanNpSchedulingArgs', 'OceanNpSchedulingArgsDict']]] = None,
1030
- spot_percentage: Optional[pulumi.Input[int]] = None,
1031
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1031
+ spot_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1032
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1032
1033
  taints: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpTaintArgs', 'OceanNpTaintArgsDict']]]]] = None,
1033
1034
  update_policy: Optional[pulumi.Input[Union['OceanNpUpdatePolicyArgs', 'OceanNpUpdatePolicyArgsDict']]] = None,
1034
- vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1035
+ vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1035
1036
  vng_template_scheduling: Optional[pulumi.Input[Union['OceanNpVngTemplateSchedulingArgs', 'OceanNpVngTemplateSchedulingArgsDict']]] = None,
1036
1037
  __props__=None):
1037
1038
  """
@@ -1039,29 +1040,29 @@ class OceanNp(pulumi.CustomResource):
1039
1040
  :param str resource_name: The name of the resource.
1040
1041
  :param pulumi.ResourceOptions opts: Options for the resource.
1041
1042
  :param pulumi.Input[Union['OceanNpAutoscalerArgs', 'OceanNpAutoscalerArgsDict']] autoscaler: The Ocean Kubernetes Autoscaler object.
1042
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
1043
- :param pulumi.Input[str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
1044
- :param pulumi.Input[bool] enable_node_public_ip: Enable node public IP.
1045
- :param pulumi.Input[bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
1043
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
1044
+ :param pulumi.Input[_builtins.str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
1045
+ :param pulumi.Input[_builtins.bool] enable_node_public_ip: Enable node public IP.
1046
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
1046
1047
  :param pulumi.Input[Union['OceanNpFiltersArgs', 'OceanNpFiltersArgsDict']] filters: Filters for the VM sizes that can be launched from the virtual node group.
1047
1048
  :param pulumi.Input[Sequence[pulumi.Input[Union['OceanNpHeadroomArgs', 'OceanNpHeadroomArgsDict']]]] headrooms: Specify the custom headroom per VNG. Provide a list of headroom objects.
1048
1049
  :param pulumi.Input[Union['OceanNpHealthArgs', 'OceanNpHealthArgsDict']] health: The Ocean AKS Health object.
1049
- :param pulumi.Input[str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
1050
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
1050
+ :param pulumi.Input[_builtins.str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
1051
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
1051
1052
  :param pulumi.Input[Sequence[pulumi.Input[Union['OceanNpLinuxOsConfigArgs', 'OceanNpLinuxOsConfigArgsDict']]]] linux_os_configs: Custom Linux OS configuration.
1052
1053
  :param pulumi.Input[Union['OceanNpLoggingArgs', 'OceanNpLoggingArgsDict']] logging: The Ocean AKS Logging Object.
1053
- :param pulumi.Input[int] max_count: Maximum node count limit.
1054
- :param pulumi.Input[int] max_pods_per_node: The maximum number of pods per node in the node pools.
1055
- :param pulumi.Input[int] min_count: Minimum node count limit.
1056
- :param pulumi.Input[str] name: Add a name for the Ocean cluster.
1057
- :param pulumi.Input[int] os_disk_size_gb: The size of the OS disk in GB.
1058
- :param pulumi.Input[str] os_disk_type: The type of the OS disk.
1059
- :param pulumi.Input[str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
1060
- :param pulumi.Input[str] os_type: The OS type of the OS disk. Can't be modified once set.
1061
- :param pulumi.Input[Sequence[pulumi.Input[str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
1062
- :param pulumi.Input[int] spot_percentage: Percentage of spot VMs to maintain.
1054
+ :param pulumi.Input[_builtins.int] max_count: Maximum node count limit.
1055
+ :param pulumi.Input[_builtins.int] max_pods_per_node: The maximum number of pods per node in the node pools.
1056
+ :param pulumi.Input[_builtins.int] min_count: Minimum node count limit.
1057
+ :param pulumi.Input[_builtins.str] name: Add a name for the Ocean cluster.
1058
+ :param pulumi.Input[_builtins.int] os_disk_size_gb: The size of the OS disk in GB.
1059
+ :param pulumi.Input[_builtins.str] os_disk_type: The type of the OS disk.
1060
+ :param pulumi.Input[_builtins.str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
1061
+ :param pulumi.Input[_builtins.str] os_type: The OS type of the OS disk. Can't be modified once set.
1062
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
1063
+ :param pulumi.Input[_builtins.int] spot_percentage: Percentage of spot VMs to maintain.
1063
1064
  :param pulumi.Input[Sequence[pulumi.Input[Union['OceanNpTaintArgs', 'OceanNpTaintArgsDict']]]] taints: Add taints to a virtual node group. Only custom user taints are allowed, and not [Kubernetes well-known taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) or Azure AKS [ScaleSetPrioirty (Spot VM) taint](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool). For all Spot VMs, AKS injects a taint kubernetes.azure.com/scalesetpriority=spot:NoSchedule, to ensure that only workloads that can handle interruptions are scheduled on Spot nodes. To [schedule a pod to run on Spot node](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool#schedule-a-pod-to-run-on-the-spot-node), add a toleration but dont include the nodeAffinity (not supported for Spot Ocean), this will prevent the pod from being scheduled using Spot Ocean.
1064
- :param pulumi.Input[Sequence[pulumi.Input[str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
1065
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
1065
1066
  :param pulumi.Input[Union['OceanNpVngTemplateSchedulingArgs', 'OceanNpVngTemplateSchedulingArgsDict']] vng_template_scheduling: An object used to specify times when the virtual node group will turn off all its node pools. Once the shutdown time will be over, the virtual node group will return to its previous state.
1066
1067
  """
1067
1068
  ...
@@ -1087,37 +1088,37 @@ class OceanNp(pulumi.CustomResource):
1087
1088
  def _internal_init(__self__,
1088
1089
  resource_name: str,
1089
1090
  opts: Optional[pulumi.ResourceOptions] = None,
1090
- aks_cluster_name: Optional[pulumi.Input[str]] = None,
1091
- aks_infrastructure_resource_group_name: Optional[pulumi.Input[str]] = None,
1092
- aks_region: Optional[pulumi.Input[str]] = None,
1093
- aks_resource_group_name: Optional[pulumi.Input[str]] = None,
1091
+ aks_cluster_name: Optional[pulumi.Input[_builtins.str]] = None,
1092
+ aks_infrastructure_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
1093
+ aks_region: Optional[pulumi.Input[_builtins.str]] = None,
1094
+ aks_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
1094
1095
  autoscaler: Optional[pulumi.Input[Union['OceanNpAutoscalerArgs', 'OceanNpAutoscalerArgsDict']]] = None,
1095
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1096
- controller_cluster_id: Optional[pulumi.Input[str]] = None,
1097
- enable_node_public_ip: Optional[pulumi.Input[bool]] = None,
1098
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1096
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1097
+ controller_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
1098
+ enable_node_public_ip: Optional[pulumi.Input[_builtins.bool]] = None,
1099
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1099
1100
  filters: Optional[pulumi.Input[Union['OceanNpFiltersArgs', 'OceanNpFiltersArgsDict']]] = None,
1100
1101
  headrooms: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpHeadroomArgs', 'OceanNpHeadroomArgsDict']]]]] = None,
1101
1102
  health: Optional[pulumi.Input[Union['OceanNpHealthArgs', 'OceanNpHealthArgsDict']]] = None,
1102
- kubernetes_version: Optional[pulumi.Input[str]] = None,
1103
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1103
+ kubernetes_version: Optional[pulumi.Input[_builtins.str]] = None,
1104
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1104
1105
  linux_os_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpLinuxOsConfigArgs', 'OceanNpLinuxOsConfigArgsDict']]]]] = None,
1105
1106
  logging: Optional[pulumi.Input[Union['OceanNpLoggingArgs', 'OceanNpLoggingArgsDict']]] = None,
1106
- max_count: Optional[pulumi.Input[int]] = None,
1107
- max_pods_per_node: Optional[pulumi.Input[int]] = None,
1108
- min_count: Optional[pulumi.Input[int]] = None,
1109
- name: Optional[pulumi.Input[str]] = None,
1110
- os_disk_size_gb: Optional[pulumi.Input[int]] = None,
1111
- os_disk_type: Optional[pulumi.Input[str]] = None,
1112
- os_sku: Optional[pulumi.Input[str]] = None,
1113
- os_type: Optional[pulumi.Input[str]] = None,
1114
- pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1107
+ max_count: Optional[pulumi.Input[_builtins.int]] = None,
1108
+ max_pods_per_node: Optional[pulumi.Input[_builtins.int]] = None,
1109
+ min_count: Optional[pulumi.Input[_builtins.int]] = None,
1110
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1111
+ os_disk_size_gb: Optional[pulumi.Input[_builtins.int]] = None,
1112
+ os_disk_type: Optional[pulumi.Input[_builtins.str]] = None,
1113
+ os_sku: Optional[pulumi.Input[_builtins.str]] = None,
1114
+ os_type: Optional[pulumi.Input[_builtins.str]] = None,
1115
+ pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1115
1116
  scheduling: Optional[pulumi.Input[Union['OceanNpSchedulingArgs', 'OceanNpSchedulingArgsDict']]] = None,
1116
- spot_percentage: Optional[pulumi.Input[int]] = None,
1117
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1117
+ spot_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1118
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1118
1119
  taints: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpTaintArgs', 'OceanNpTaintArgsDict']]]]] = None,
1119
1120
  update_policy: Optional[pulumi.Input[Union['OceanNpUpdatePolicyArgs', 'OceanNpUpdatePolicyArgsDict']]] = None,
1120
- vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1121
+ vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1121
1122
  vng_template_scheduling: Optional[pulumi.Input[Union['OceanNpVngTemplateSchedulingArgs', 'OceanNpVngTemplateSchedulingArgsDict']]] = None,
1122
1123
  __props__=None):
1123
1124
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1182,37 +1183,37 @@ class OceanNp(pulumi.CustomResource):
1182
1183
  def get(resource_name: str,
1183
1184
  id: pulumi.Input[str],
1184
1185
  opts: Optional[pulumi.ResourceOptions] = None,
1185
- aks_cluster_name: Optional[pulumi.Input[str]] = None,
1186
- aks_infrastructure_resource_group_name: Optional[pulumi.Input[str]] = None,
1187
- aks_region: Optional[pulumi.Input[str]] = None,
1188
- aks_resource_group_name: Optional[pulumi.Input[str]] = None,
1186
+ aks_cluster_name: Optional[pulumi.Input[_builtins.str]] = None,
1187
+ aks_infrastructure_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
1188
+ aks_region: Optional[pulumi.Input[_builtins.str]] = None,
1189
+ aks_resource_group_name: Optional[pulumi.Input[_builtins.str]] = None,
1189
1190
  autoscaler: Optional[pulumi.Input[Union['OceanNpAutoscalerArgs', 'OceanNpAutoscalerArgsDict']]] = None,
1190
- availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1191
- controller_cluster_id: Optional[pulumi.Input[str]] = None,
1192
- enable_node_public_ip: Optional[pulumi.Input[bool]] = None,
1193
- fallback_to_ondemand: Optional[pulumi.Input[bool]] = None,
1191
+ availability_zones: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1192
+ controller_cluster_id: Optional[pulumi.Input[_builtins.str]] = None,
1193
+ enable_node_public_ip: Optional[pulumi.Input[_builtins.bool]] = None,
1194
+ fallback_to_ondemand: Optional[pulumi.Input[_builtins.bool]] = None,
1194
1195
  filters: Optional[pulumi.Input[Union['OceanNpFiltersArgs', 'OceanNpFiltersArgsDict']]] = None,
1195
1196
  headrooms: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpHeadroomArgs', 'OceanNpHeadroomArgsDict']]]]] = None,
1196
1197
  health: Optional[pulumi.Input[Union['OceanNpHealthArgs', 'OceanNpHealthArgsDict']]] = None,
1197
- kubernetes_version: Optional[pulumi.Input[str]] = None,
1198
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1198
+ kubernetes_version: Optional[pulumi.Input[_builtins.str]] = None,
1199
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1199
1200
  linux_os_configs: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpLinuxOsConfigArgs', 'OceanNpLinuxOsConfigArgsDict']]]]] = None,
1200
1201
  logging: Optional[pulumi.Input[Union['OceanNpLoggingArgs', 'OceanNpLoggingArgsDict']]] = None,
1201
- max_count: Optional[pulumi.Input[int]] = None,
1202
- max_pods_per_node: Optional[pulumi.Input[int]] = None,
1203
- min_count: Optional[pulumi.Input[int]] = None,
1204
- name: Optional[pulumi.Input[str]] = None,
1205
- os_disk_size_gb: Optional[pulumi.Input[int]] = None,
1206
- os_disk_type: Optional[pulumi.Input[str]] = None,
1207
- os_sku: Optional[pulumi.Input[str]] = None,
1208
- os_type: Optional[pulumi.Input[str]] = None,
1209
- pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1202
+ max_count: Optional[pulumi.Input[_builtins.int]] = None,
1203
+ max_pods_per_node: Optional[pulumi.Input[_builtins.int]] = None,
1204
+ min_count: Optional[pulumi.Input[_builtins.int]] = None,
1205
+ name: Optional[pulumi.Input[_builtins.str]] = None,
1206
+ os_disk_size_gb: Optional[pulumi.Input[_builtins.int]] = None,
1207
+ os_disk_type: Optional[pulumi.Input[_builtins.str]] = None,
1208
+ os_sku: Optional[pulumi.Input[_builtins.str]] = None,
1209
+ os_type: Optional[pulumi.Input[_builtins.str]] = None,
1210
+ pod_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1210
1211
  scheduling: Optional[pulumi.Input[Union['OceanNpSchedulingArgs', 'OceanNpSchedulingArgsDict']]] = None,
1211
- spot_percentage: Optional[pulumi.Input[int]] = None,
1212
- tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1212
+ spot_percentage: Optional[pulumi.Input[_builtins.int]] = None,
1213
+ tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
1213
1214
  taints: Optional[pulumi.Input[Sequence[pulumi.Input[Union['OceanNpTaintArgs', 'OceanNpTaintArgsDict']]]]] = None,
1214
1215
  update_policy: Optional[pulumi.Input[Union['OceanNpUpdatePolicyArgs', 'OceanNpUpdatePolicyArgsDict']]] = None,
1215
- vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1216
+ vnet_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[_builtins.str]]]] = None,
1216
1217
  vng_template_scheduling: Optional[pulumi.Input[Union['OceanNpVngTemplateSchedulingArgs', 'OceanNpVngTemplateSchedulingArgsDict']]] = None) -> 'OceanNp':
1217
1218
  """
1218
1219
  Get an existing OceanNp resource's state with the given name, id, and optional extra
@@ -1222,29 +1223,29 @@ class OceanNp(pulumi.CustomResource):
1222
1223
  :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
1223
1224
  :param pulumi.ResourceOptions opts: Options for the resource.
1224
1225
  :param pulumi.Input[Union['OceanNpAutoscalerArgs', 'OceanNpAutoscalerArgsDict']] autoscaler: The Ocean Kubernetes Autoscaler object.
1225
- :param pulumi.Input[Sequence[pulumi.Input[str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
1226
- :param pulumi.Input[str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
1227
- :param pulumi.Input[bool] enable_node_public_ip: Enable node public IP.
1228
- :param pulumi.Input[bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
1226
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] availability_zones: An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
1227
+ :param pulumi.Input[_builtins.str] controller_cluster_id: Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
1228
+ :param pulumi.Input[_builtins.bool] enable_node_public_ip: Enable node public IP.
1229
+ :param pulumi.Input[_builtins.bool] fallback_to_ondemand: If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
1229
1230
  :param pulumi.Input[Union['OceanNpFiltersArgs', 'OceanNpFiltersArgsDict']] filters: Filters for the VM sizes that can be launched from the virtual node group.
1230
1231
  :param pulumi.Input[Sequence[pulumi.Input[Union['OceanNpHeadroomArgs', 'OceanNpHeadroomArgsDict']]]] headrooms: Specify the custom headroom per VNG. Provide a list of headroom objects.
1231
1232
  :param pulumi.Input[Union['OceanNpHealthArgs', 'OceanNpHealthArgsDict']] health: The Ocean AKS Health object.
1232
- :param pulumi.Input[str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
1233
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
1233
+ :param pulumi.Input[_builtins.str] kubernetes_version: The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
1234
+ :param pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]] labels: An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
1234
1235
  :param pulumi.Input[Sequence[pulumi.Input[Union['OceanNpLinuxOsConfigArgs', 'OceanNpLinuxOsConfigArgsDict']]]] linux_os_configs: Custom Linux OS configuration.
1235
1236
  :param pulumi.Input[Union['OceanNpLoggingArgs', 'OceanNpLoggingArgsDict']] logging: The Ocean AKS Logging Object.
1236
- :param pulumi.Input[int] max_count: Maximum node count limit.
1237
- :param pulumi.Input[int] max_pods_per_node: The maximum number of pods per node in the node pools.
1238
- :param pulumi.Input[int] min_count: Minimum node count limit.
1239
- :param pulumi.Input[str] name: Add a name for the Ocean cluster.
1240
- :param pulumi.Input[int] os_disk_size_gb: The size of the OS disk in GB.
1241
- :param pulumi.Input[str] os_disk_type: The type of the OS disk.
1242
- :param pulumi.Input[str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
1243
- :param pulumi.Input[str] os_type: The OS type of the OS disk. Can't be modified once set.
1244
- :param pulumi.Input[Sequence[pulumi.Input[str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
1245
- :param pulumi.Input[int] spot_percentage: Percentage of spot VMs to maintain.
1237
+ :param pulumi.Input[_builtins.int] max_count: Maximum node count limit.
1238
+ :param pulumi.Input[_builtins.int] max_pods_per_node: The maximum number of pods per node in the node pools.
1239
+ :param pulumi.Input[_builtins.int] min_count: Minimum node count limit.
1240
+ :param pulumi.Input[_builtins.str] name: Add a name for the Ocean cluster.
1241
+ :param pulumi.Input[_builtins.int] os_disk_size_gb: The size of the OS disk in GB.
1242
+ :param pulumi.Input[_builtins.str] os_disk_type: The type of the OS disk.
1243
+ :param pulumi.Input[_builtins.str] os_sku: The OS SKU of the OS type. Must correlate with the os type.
1244
+ :param pulumi.Input[_builtins.str] os_type: The OS type of the OS disk. Can't be modified once set.
1245
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] pod_subnet_ids: The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
1246
+ :param pulumi.Input[_builtins.int] spot_percentage: Percentage of spot VMs to maintain.
1246
1247
  :param pulumi.Input[Sequence[pulumi.Input[Union['OceanNpTaintArgs', 'OceanNpTaintArgsDict']]]] taints: Add taints to a virtual node group. Only custom user taints are allowed, and not [Kubernetes well-known taints](https://kubernetes.io/docs/reference/labels-annotations-taints/) or Azure AKS [ScaleSetPrioirty (Spot VM) taint](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool). For all Spot VMs, AKS injects a taint kubernetes.azure.com/scalesetpriority=spot:NoSchedule, to ensure that only workloads that can handle interruptions are scheduled on Spot nodes. To [schedule a pod to run on Spot node](https://learn.microsoft.com/en-us/azure/aks/spot-node-pool#schedule-a-pod-to-run-on-the-spot-node), add a toleration but dont include the nodeAffinity (not supported for Spot Ocean), this will prevent the pod from being scheduled using Spot Ocean.
1247
- :param pulumi.Input[Sequence[pulumi.Input[str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
1248
+ :param pulumi.Input[Sequence[pulumi.Input[_builtins.str]]] vnet_subnet_ids: The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
1248
1249
  :param pulumi.Input[Union['OceanNpVngTemplateSchedulingArgs', 'OceanNpVngTemplateSchedulingArgsDict']] vng_template_scheduling: An object used to specify times when the virtual node group will turn off all its node pools. Once the shutdown time will be over, the virtual node group will return to its previous state.
1249
1250
  """
1250
1251
  opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
@@ -1285,27 +1286,27 @@ class OceanNp(pulumi.CustomResource):
1285
1286
  __props__.__dict__["vng_template_scheduling"] = vng_template_scheduling
1286
1287
  return OceanNp(resource_name, opts=opts, __props__=__props__)
1287
1288
 
1288
- @property
1289
+ @_builtins.property
1289
1290
  @pulumi.getter(name="aksClusterName")
1290
- def aks_cluster_name(self) -> pulumi.Output[str]:
1291
+ def aks_cluster_name(self) -> pulumi.Output[_builtins.str]:
1291
1292
  return pulumi.get(self, "aks_cluster_name")
1292
1293
 
1293
- @property
1294
+ @_builtins.property
1294
1295
  @pulumi.getter(name="aksInfrastructureResourceGroupName")
1295
- def aks_infrastructure_resource_group_name(self) -> pulumi.Output[str]:
1296
+ def aks_infrastructure_resource_group_name(self) -> pulumi.Output[_builtins.str]:
1296
1297
  return pulumi.get(self, "aks_infrastructure_resource_group_name")
1297
1298
 
1298
- @property
1299
+ @_builtins.property
1299
1300
  @pulumi.getter(name="aksRegion")
1300
- def aks_region(self) -> pulumi.Output[str]:
1301
+ def aks_region(self) -> pulumi.Output[_builtins.str]:
1301
1302
  return pulumi.get(self, "aks_region")
1302
1303
 
1303
- @property
1304
+ @_builtins.property
1304
1305
  @pulumi.getter(name="aksResourceGroupName")
1305
- def aks_resource_group_name(self) -> pulumi.Output[str]:
1306
+ def aks_resource_group_name(self) -> pulumi.Output[_builtins.str]:
1306
1307
  return pulumi.get(self, "aks_resource_group_name")
1307
1308
 
1308
- @property
1309
+ @_builtins.property
1309
1310
  @pulumi.getter
1310
1311
  def autoscaler(self) -> pulumi.Output[Optional['outputs.OceanNpAutoscaler']]:
1311
1312
  """
@@ -1313,39 +1314,39 @@ class OceanNp(pulumi.CustomResource):
1313
1314
  """
1314
1315
  return pulumi.get(self, "autoscaler")
1315
1316
 
1316
- @property
1317
+ @_builtins.property
1317
1318
  @pulumi.getter(name="availabilityZones")
1318
- def availability_zones(self) -> pulumi.Output[Sequence[str]]:
1319
+ def availability_zones(self) -> pulumi.Output[Sequence[_builtins.str]]:
1319
1320
  """
1320
1321
  An Array holding Availability Zones, this configures the availability zones the Ocean may launch instances in per VNG.
1321
1322
  """
1322
1323
  return pulumi.get(self, "availability_zones")
1323
1324
 
1324
- @property
1325
+ @_builtins.property
1325
1326
  @pulumi.getter(name="controllerClusterId")
1326
- def controller_cluster_id(self) -> pulumi.Output[str]:
1327
+ def controller_cluster_id(self) -> pulumi.Output[_builtins.str]:
1327
1328
  """
1328
1329
  Enter a unique Ocean cluster identifier. Cannot be updated. This needs to match with string that was used to install the controller in the cluster, typically clusterName + 8 digit string.
1329
1330
  """
1330
1331
  return pulumi.get(self, "controller_cluster_id")
1331
1332
 
1332
- @property
1333
+ @_builtins.property
1333
1334
  @pulumi.getter(name="enableNodePublicIp")
1334
- def enable_node_public_ip(self) -> pulumi.Output[Optional[bool]]:
1335
+ def enable_node_public_ip(self) -> pulumi.Output[Optional[_builtins.bool]]:
1335
1336
  """
1336
1337
  Enable node public IP.
1337
1338
  """
1338
1339
  return pulumi.get(self, "enable_node_public_ip")
1339
1340
 
1340
- @property
1341
+ @_builtins.property
1341
1342
  @pulumi.getter(name="fallbackToOndemand")
1342
- def fallback_to_ondemand(self) -> pulumi.Output[Optional[bool]]:
1343
+ def fallback_to_ondemand(self) -> pulumi.Output[Optional[_builtins.bool]]:
1343
1344
  """
1344
1345
  If no spot VM markets are available, enable Ocean to launch regular (pay-as-you-go) nodes instead.
1345
1346
  """
1346
1347
  return pulumi.get(self, "fallback_to_ondemand")
1347
1348
 
1348
- @property
1349
+ @_builtins.property
1349
1350
  @pulumi.getter
1350
1351
  def filters(self) -> pulumi.Output[Optional['outputs.OceanNpFilters']]:
1351
1352
  """
@@ -1353,7 +1354,7 @@ class OceanNp(pulumi.CustomResource):
1353
1354
  """
1354
1355
  return pulumi.get(self, "filters")
1355
1356
 
1356
- @property
1357
+ @_builtins.property
1357
1358
  @pulumi.getter
1358
1359
  def headrooms(self) -> pulumi.Output[Optional[Sequence['outputs.OceanNpHeadroom']]]:
1359
1360
  """
@@ -1361,7 +1362,7 @@ class OceanNp(pulumi.CustomResource):
1361
1362
  """
1362
1363
  return pulumi.get(self, "headrooms")
1363
1364
 
1364
- @property
1365
+ @_builtins.property
1365
1366
  @pulumi.getter
1366
1367
  def health(self) -> pulumi.Output[Optional['outputs.OceanNpHealth']]:
1367
1368
  """
@@ -1369,23 +1370,23 @@ class OceanNp(pulumi.CustomResource):
1369
1370
  """
1370
1371
  return pulumi.get(self, "health")
1371
1372
 
1372
- @property
1373
+ @_builtins.property
1373
1374
  @pulumi.getter(name="kubernetesVersion")
1374
- def kubernetes_version(self) -> pulumi.Output[Optional[str]]:
1375
+ def kubernetes_version(self) -> pulumi.Output[Optional[_builtins.str]]:
1375
1376
  """
1376
1377
  The desired Kubernetes version of the launched nodes. In case the value is null, the Kubernetes version of the control plane is used.
1377
1378
  """
1378
1379
  return pulumi.get(self, "kubernetes_version")
1379
1380
 
1380
- @property
1381
+ @_builtins.property
1381
1382
  @pulumi.getter
1382
- def labels(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1383
+ def labels(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1383
1384
  """
1384
1385
  An array of labels to add to the virtual node group. Only custom user labels are allowed, and not [Kubernetes well-known labels](https://kubernetes.io/docs/reference/labels-annotations-taints/) or [ Azure AKS labels](https://learn.microsoft.com/en-us/azure/aks/use-labels) or [Spot labels](https://docs.spot.io/ocean/features/labels-and-taints?id=spot-labels).
1385
1386
  """
1386
1387
  return pulumi.get(self, "labels")
1387
1388
 
1388
- @property
1389
+ @_builtins.property
1389
1390
  @pulumi.getter(name="linuxOsConfigs")
1390
1391
  def linux_os_configs(self) -> pulumi.Output[Optional[Sequence['outputs.OceanNpLinuxOsConfig']]]:
1391
1392
  """
@@ -1393,7 +1394,7 @@ class OceanNp(pulumi.CustomResource):
1393
1394
  """
1394
1395
  return pulumi.get(self, "linux_os_configs")
1395
1396
 
1396
- @property
1397
+ @_builtins.property
1397
1398
  @pulumi.getter
1398
1399
  def logging(self) -> pulumi.Output[Optional['outputs.OceanNpLogging']]:
1399
1400
  """
@@ -1401,97 +1402,97 @@ class OceanNp(pulumi.CustomResource):
1401
1402
  """
1402
1403
  return pulumi.get(self, "logging")
1403
1404
 
1404
- @property
1405
+ @_builtins.property
1405
1406
  @pulumi.getter(name="maxCount")
1406
- def max_count(self) -> pulumi.Output[Optional[int]]:
1407
+ def max_count(self) -> pulumi.Output[Optional[_builtins.int]]:
1407
1408
  """
1408
1409
  Maximum node count limit.
1409
1410
  """
1410
1411
  return pulumi.get(self, "max_count")
1411
1412
 
1412
- @property
1413
+ @_builtins.property
1413
1414
  @pulumi.getter(name="maxPodsPerNode")
1414
- def max_pods_per_node(self) -> pulumi.Output[Optional[int]]:
1415
+ def max_pods_per_node(self) -> pulumi.Output[Optional[_builtins.int]]:
1415
1416
  """
1416
1417
  The maximum number of pods per node in the node pools.
1417
1418
  """
1418
1419
  return pulumi.get(self, "max_pods_per_node")
1419
1420
 
1420
- @property
1421
+ @_builtins.property
1421
1422
  @pulumi.getter(name="minCount")
1422
- def min_count(self) -> pulumi.Output[Optional[int]]:
1423
+ def min_count(self) -> pulumi.Output[Optional[_builtins.int]]:
1423
1424
  """
1424
1425
  Minimum node count limit.
1425
1426
  """
1426
1427
  return pulumi.get(self, "min_count")
1427
1428
 
1428
- @property
1429
+ @_builtins.property
1429
1430
  @pulumi.getter
1430
- def name(self) -> pulumi.Output[str]:
1431
+ def name(self) -> pulumi.Output[_builtins.str]:
1431
1432
  """
1432
1433
  Add a name for the Ocean cluster.
1433
1434
  """
1434
1435
  return pulumi.get(self, "name")
1435
1436
 
1436
- @property
1437
+ @_builtins.property
1437
1438
  @pulumi.getter(name="osDiskSizeGb")
1438
- def os_disk_size_gb(self) -> pulumi.Output[Optional[int]]:
1439
+ def os_disk_size_gb(self) -> pulumi.Output[Optional[_builtins.int]]:
1439
1440
  """
1440
1441
  The size of the OS disk in GB.
1441
1442
  """
1442
1443
  return pulumi.get(self, "os_disk_size_gb")
1443
1444
 
1444
- @property
1445
+ @_builtins.property
1445
1446
  @pulumi.getter(name="osDiskType")
1446
- def os_disk_type(self) -> pulumi.Output[Optional[str]]:
1447
+ def os_disk_type(self) -> pulumi.Output[Optional[_builtins.str]]:
1447
1448
  """
1448
1449
  The type of the OS disk.
1449
1450
  """
1450
1451
  return pulumi.get(self, "os_disk_type")
1451
1452
 
1452
- @property
1453
+ @_builtins.property
1453
1454
  @pulumi.getter(name="osSku")
1454
- def os_sku(self) -> pulumi.Output[Optional[str]]:
1455
+ def os_sku(self) -> pulumi.Output[Optional[_builtins.str]]:
1455
1456
  """
1456
1457
  The OS SKU of the OS type. Must correlate with the os type.
1457
1458
  """
1458
1459
  return pulumi.get(self, "os_sku")
1459
1460
 
1460
- @property
1461
+ @_builtins.property
1461
1462
  @pulumi.getter(name="osType")
1462
- def os_type(self) -> pulumi.Output[Optional[str]]:
1463
+ def os_type(self) -> pulumi.Output[Optional[_builtins.str]]:
1463
1464
  """
1464
1465
  The OS type of the OS disk. Can't be modified once set.
1465
1466
  """
1466
1467
  return pulumi.get(self, "os_type")
1467
1468
 
1468
- @property
1469
+ @_builtins.property
1469
1470
  @pulumi.getter(name="podSubnetIds")
1470
- def pod_subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
1471
+ def pod_subnet_ids(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1471
1472
  """
1472
1473
  The IDs of subnets in an existing VNet into which to assign pods in the cluster (requires azure network-plugin).
1473
1474
  """
1474
1475
  return pulumi.get(self, "pod_subnet_ids")
1475
1476
 
1476
- @property
1477
+ @_builtins.property
1477
1478
  @pulumi.getter
1478
1479
  def scheduling(self) -> pulumi.Output[Optional['outputs.OceanNpScheduling']]:
1479
1480
  return pulumi.get(self, "scheduling")
1480
1481
 
1481
- @property
1482
+ @_builtins.property
1482
1483
  @pulumi.getter(name="spotPercentage")
1483
- def spot_percentage(self) -> pulumi.Output[Optional[int]]:
1484
+ def spot_percentage(self) -> pulumi.Output[Optional[_builtins.int]]:
1484
1485
  """
1485
1486
  Percentage of spot VMs to maintain.
1486
1487
  """
1487
1488
  return pulumi.get(self, "spot_percentage")
1488
1489
 
1489
- @property
1490
+ @_builtins.property
1490
1491
  @pulumi.getter
1491
- def tags(self) -> pulumi.Output[Optional[Mapping[str, str]]]:
1492
+ def tags(self) -> pulumi.Output[Optional[Mapping[str, _builtins.str]]]:
1492
1493
  return pulumi.get(self, "tags")
1493
1494
 
1494
- @property
1495
+ @_builtins.property
1495
1496
  @pulumi.getter
1496
1497
  def taints(self) -> pulumi.Output[Optional[Sequence['outputs.OceanNpTaint']]]:
1497
1498
  """
@@ -1499,20 +1500,20 @@ class OceanNp(pulumi.CustomResource):
1499
1500
  """
1500
1501
  return pulumi.get(self, "taints")
1501
1502
 
1502
- @property
1503
+ @_builtins.property
1503
1504
  @pulumi.getter(name="updatePolicy")
1504
1505
  def update_policy(self) -> pulumi.Output[Optional['outputs.OceanNpUpdatePolicy']]:
1505
1506
  return pulumi.get(self, "update_policy")
1506
1507
 
1507
- @property
1508
+ @_builtins.property
1508
1509
  @pulumi.getter(name="vnetSubnetIds")
1509
- def vnet_subnet_ids(self) -> pulumi.Output[Optional[Sequence[str]]]:
1510
+ def vnet_subnet_ids(self) -> pulumi.Output[Optional[Sequence[_builtins.str]]]:
1510
1511
  """
1511
1512
  The IDs of subnets in an existing VNet into which to assign nodes in the cluster (requires azure network-plugin).
1512
1513
  """
1513
1514
  return pulumi.get(self, "vnet_subnet_ids")
1514
1515
 
1515
- @property
1516
+ @_builtins.property
1516
1517
  @pulumi.getter(name="vngTemplateScheduling")
1517
1518
  def vng_template_scheduling(self) -> pulumi.Output[Optional['outputs.OceanNpVngTemplateScheduling']]:
1518
1519
  """