pulumi-eks 3.9.0a1742626547__py3-none-any.whl → 4.2.0__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.
@@ -2,6 +2,7 @@
2
2
  # *** WARNING: this file was generated by pulumi-gen-eks. ***
3
3
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
4
4
 
5
+ import builtins
5
6
  import copy
6
7
  import warnings
7
8
  import sys
@@ -26,52 +27,52 @@ __all__ = ['NodeGroupV2Args', 'NodeGroupV2']
26
27
  class NodeGroupV2Args:
27
28
  def __init__(__self__, *,
28
29
  cluster: pulumi.Input[Union['Cluster', 'CoreDataArgs']],
29
- ami_id: Optional[pulumi.Input[str]] = None,
30
- ami_type: Optional[pulumi.Input[str]] = None,
31
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
32
- bootstrap_extra_args: Optional[pulumi.Input[str]] = None,
30
+ ami_id: Optional[pulumi.Input[builtins.str]] = None,
31
+ ami_type: Optional[pulumi.Input[builtins.str]] = None,
32
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
33
+ bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
33
34
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
34
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
35
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
35
36
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
36
- cluster_ingress_rule_id: Optional[pulumi.Input[str]] = None,
37
- desired_capacity: Optional[pulumi.Input[int]] = None,
38
- enable_detailed_monitoring: Optional[pulumi.Input[bool]] = None,
39
- encrypt_root_block_device: Optional[pulumi.Input[bool]] = None,
37
+ cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
38
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
39
+ enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
40
+ encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
40
41
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
41
- gpu: Optional[pulumi.Input[bool]] = None,
42
- ignore_scaling_changes: Optional[bool] = None,
42
+ gpu: Optional[pulumi.Input[builtins.bool]] = None,
43
+ ignore_scaling_changes: Optional[builtins.bool] = None,
43
44
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
44
- instance_profile_name: Optional[pulumi.Input[str]] = None,
45
- instance_type: Optional[pulumi.Input[str]] = None,
46
- key_name: Optional[pulumi.Input[str]] = None,
47
- kubelet_extra_args: Optional[pulumi.Input[str]] = None,
48
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
45
+ instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
46
+ instance_type: Optional[pulumi.Input[builtins.str]] = None,
47
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
48
+ kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
49
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
49
50
  launch_template_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.LaunchTemplateTagSpecificationArgs']]]] = None,
50
- max_size: Optional[pulumi.Input[int]] = None,
51
- min_refresh_percentage: Optional[pulumi.Input[int]] = None,
52
- min_size: Optional[pulumi.Input[int]] = None,
53
- node_associate_public_ip_address: Optional[pulumi.Input[bool]] = None,
54
- node_public_key: Optional[pulumi.Input[str]] = None,
55
- node_root_volume_delete_on_termination: Optional[pulumi.Input[bool]] = None,
56
- node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
57
- node_root_volume_iops: Optional[pulumi.Input[int]] = None,
58
- node_root_volume_size: Optional[pulumi.Input[int]] = None,
59
- node_root_volume_throughput: Optional[pulumi.Input[int]] = None,
60
- node_root_volume_type: Optional[pulumi.Input[str]] = None,
51
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
52
+ min_refresh_percentage: Optional[pulumi.Input[builtins.int]] = None,
53
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
54
+ node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
55
+ node_public_key: Optional[pulumi.Input[builtins.str]] = None,
56
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
57
+ node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
58
+ node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
59
+ node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
60
+ node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
61
+ node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
61
62
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
62
- node_security_group_id: Optional[pulumi.Input[str]] = None,
63
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
64
- node_user_data: Optional[pulumi.Input[str]] = None,
65
- node_user_data_override: Optional[pulumi.Input[str]] = None,
63
+ node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
64
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
65
+ node_user_data: Optional[pulumi.Input[builtins.str]] = None,
66
+ node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
66
67
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]]] = None,
67
68
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
68
- spot_price: Optional[pulumi.Input[str]] = None,
69
+ spot_price: Optional[pulumi.Input[builtins.str]] = None,
69
70
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]]] = None,
70
- version: Optional[pulumi.Input[str]] = None):
71
+ version: Optional[pulumi.Input[builtins.str]] = None):
71
72
  """
72
73
  The set of arguments for constructing a NodeGroupV2 resource.
73
74
  :param pulumi.Input[Union['Cluster', 'CoreDataArgs']] cluster: The target EKS cluster.
74
- :param pulumi.Input[str] ami_id: The AMI ID to use for the worker nodes.
75
+ :param pulumi.Input[builtins.str] ami_id: The AMI ID to use for the worker nodes.
75
76
 
76
77
  Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
77
78
 
@@ -79,17 +80,17 @@ class NodeGroupV2Args:
79
80
 
80
81
  See for more details:
81
82
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
82
- :param pulumi.Input[str] ami_type: The AMI Type to use for the worker nodes.
83
+ :param pulumi.Input[builtins.str] ami_type: The AMI Type to use for the worker nodes.
83
84
 
84
85
  Only applicable when setting an AMI ID that is of type `arm64`.
85
86
 
86
87
  Note: `amiType` and `gpu` are mutually exclusive.
87
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
88
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
88
89
 
89
90
  Per AWS, all stack-level tags, including automatically created tags, and the `cloudFormationTags` option are propagated to resources that AWS CloudFormation supports, including the AutoScalingGroup. See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
90
91
 
91
92
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
92
- :param pulumi.Input[str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
93
+ :param pulumi.Input[builtins.str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
93
94
  :param pulumi.Input[Mapping[str, Any]] bottlerocket_settings: The configuration settings for Bottlerocket OS.
94
95
  The settings will get merged with the base settings the provider uses to configure Bottlerocket.
95
96
 
@@ -100,24 +101,24 @@ class NodeGroupV2Args:
100
101
  - settings.kubernetes.cluster-dns-ip
101
102
 
102
103
  For an overview of the available settings, see https://bottlerocket.dev/en/os/1.20.x/api/settings/.
103
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
104
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
104
105
 
105
106
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
106
107
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroupRule'] cluster_ingress_rule: The ingress rule that gives node group access.
107
- :param pulumi.Input[str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
108
- :param pulumi.Input[int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
109
- :param pulumi.Input[bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
108
+ :param pulumi.Input[builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
109
+ :param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
110
+ :param pulumi.Input[builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
110
111
 
111
112
  With detailed monitoring, all metrics, including status check metrics, are available in 1-minute intervals.
112
113
  When enabled, you can also get aggregated data across groups of similar instances.
113
114
 
114
115
  Note: You are charged per metric that is sent to CloudWatch. You are not charged for data storage.
115
116
  For more information, see "Paid tier" and "Example 1 - EC2 Detailed Monitoring" here https://aws.amazon.com/cloudwatch/pricing/.
116
- :param pulumi.Input[bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
117
+ :param pulumi.Input[builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
117
118
  :param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]] extra_node_security_groups: Extra security groups to attach on all nodes in this worker node group.
118
119
 
119
120
  This additional set of security groups captures any user application rules that will be needed for the nodes.
120
- :param pulumi.Input[bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
121
+ :param pulumi.Input[builtins.bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
121
122
 
122
123
  Defaults to false.
123
124
 
@@ -126,29 +127,29 @@ class NodeGroupV2Args:
126
127
  See for more details:
127
128
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
128
129
  - https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
129
- :param bool ignore_scaling_changes: Whether to ignore changes to the desired size of the Auto Scaling Group. This is useful when using Cluster Autoscaler.
130
+ :param builtins.bool ignore_scaling_changes: Whether to ignore changes to the desired size of the Auto Scaling Group. This is useful when using Cluster Autoscaler.
130
131
 
131
132
  See [EKS best practices](https://aws.github.io/aws-eks-best-practices/cluster-autoscaling/) for more details.
132
133
  :param 'pulumi_aws.iam.InstanceProfile' instance_profile: The IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
133
- :param pulumi.Input[str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
134
- :param pulumi.Input[str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
135
- :param pulumi.Input[str] key_name: Name of the key pair to use for SSH access to worker nodes.
136
- :param pulumi.Input[str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
137
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
134
+ :param pulumi.Input[builtins.str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
135
+ :param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
136
+ :param pulumi.Input[builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
137
+ :param pulumi.Input[builtins.str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
138
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
138
139
  :param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.LaunchTemplateTagSpecificationArgs']]] launch_template_tag_specifications: The tag specifications to apply to the launch template.
139
- :param pulumi.Input[int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
140
- :param pulumi.Input[int] min_refresh_percentage: The minimum amount of instances that should remain available during an instance refresh, expressed as a percentage. Defaults to 50.
141
- :param pulumi.Input[int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
142
- :param pulumi.Input[bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
143
- :param pulumi.Input[str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
140
+ :param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
141
+ :param pulumi.Input[builtins.int] min_refresh_percentage: The minimum amount of instances that should remain available during an instance refresh, expressed as a percentage. Defaults to 50.
142
+ :param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
143
+ :param pulumi.Input[builtins.bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
144
+ :param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
144
145
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
145
146
  If not provided, no SSH access is enabled on VMs.
146
- :param pulumi.Input[bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
147
- :param pulumi.Input[bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
148
- :param pulumi.Input[int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
149
- :param pulumi.Input[int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
150
- :param pulumi.Input[int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
151
- :param pulumi.Input[str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
147
+ :param pulumi.Input[builtins.bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
148
+ :param pulumi.Input[builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
149
+ :param pulumi.Input[builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
150
+ :param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
151
+ :param pulumi.Input[builtins.int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
152
+ :param pulumi.Input[builtins.str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
152
153
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] node_security_group: The security group for the worker node group to communicate with the cluster.
153
154
 
154
155
  This security group requires specific inbound and outbound rules.
@@ -157,7 +158,7 @@ class NodeGroupV2Args:
157
158
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
158
159
 
159
160
  Note: The `nodeSecurityGroup` option and the cluster option`nodeSecurityGroupTags` are mutually exclusive.
160
- :param pulumi.Input[str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
161
+ :param pulumi.Input[builtins.str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
161
162
 
162
163
  This security group requires specific inbound and outbound rules.
163
164
 
@@ -165,11 +166,11 @@ class NodeGroupV2Args:
165
166
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
166
167
 
167
168
  Note: The `nodeSecurityGroupId` option and the cluster option `nodeSecurityGroupTags` are mutually exclusive.
168
- :param pulumi.Input[Sequence[pulumi.Input[str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
169
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
169
170
 
170
171
  Setting this option overrides which subnets to use for the worker node group, regardless if the cluster's `subnetIds` is set, or if `publicSubnetIds` and/or `privateSubnetIds` were set.
171
- :param pulumi.Input[str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
172
- :param pulumi.Input[str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
172
+ :param pulumi.Input[builtins.str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
173
+ :param pulumi.Input[builtins.str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
173
174
 
174
175
  See for more details: https://docs.aws.amazon.com/eks/latest/userguide/worker.html
175
176
  :param pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]] nodeadm_extra_options: Extra nodeadm configuration sections to be added to the nodeadm user data. This can be shell scripts, nodeadm NodeConfig or any other user data compatible script. When configuring additional nodeadm NodeConfig sections, they'll be merged with the base settings the provider sets. You can overwrite base settings or provide additional settings this way.
@@ -187,9 +188,9 @@ class NodeGroupV2Args:
187
188
  Valid values are `RECOMMENDED`, `AL2`, `AL2023` and `Bottlerocket`.
188
189
 
189
190
  Defaults to the current recommended OS.
190
- :param pulumi.Input[str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
191
+ :param pulumi.Input[builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
191
192
  :param pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]] taints: Custom k8s node taints to be attached to each worker node. Adds the given taints to the `--register-with-taints` kubelet argument
192
- :param pulumi.Input[str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
193
+ :param pulumi.Input[builtins.str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
193
194
  """
194
195
  pulumi.set(__self__, "cluster", cluster)
195
196
  if ami_id is not None:
@@ -291,7 +292,7 @@ class NodeGroupV2Args:
291
292
 
292
293
  @property
293
294
  @pulumi.getter(name="amiId")
294
- def ami_id(self) -> Optional[pulumi.Input[str]]:
295
+ def ami_id(self) -> Optional[pulumi.Input[builtins.str]]:
295
296
  """
296
297
  The AMI ID to use for the worker nodes.
297
298
 
@@ -305,12 +306,12 @@ class NodeGroupV2Args:
305
306
  return pulumi.get(self, "ami_id")
306
307
 
307
308
  @ami_id.setter
308
- def ami_id(self, value: Optional[pulumi.Input[str]]):
309
+ def ami_id(self, value: Optional[pulumi.Input[builtins.str]]):
309
310
  pulumi.set(self, "ami_id", value)
310
311
 
311
312
  @property
312
313
  @pulumi.getter(name="amiType")
313
- def ami_type(self) -> Optional[pulumi.Input[str]]:
314
+ def ami_type(self) -> Optional[pulumi.Input[builtins.str]]:
314
315
  """
315
316
  The AMI Type to use for the worker nodes.
316
317
 
@@ -321,12 +322,12 @@ class NodeGroupV2Args:
321
322
  return pulumi.get(self, "ami_type")
322
323
 
323
324
  @ami_type.setter
324
- def ami_type(self, value: Optional[pulumi.Input[str]]):
325
+ def ami_type(self, value: Optional[pulumi.Input[builtins.str]]):
325
326
  pulumi.set(self, "ami_type", value)
326
327
 
327
328
  @property
328
329
  @pulumi.getter(name="autoScalingGroupTags")
329
- def auto_scaling_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
330
+ def auto_scaling_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
330
331
  """
331
332
  The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
332
333
 
@@ -337,19 +338,19 @@ class NodeGroupV2Args:
337
338
  return pulumi.get(self, "auto_scaling_group_tags")
338
339
 
339
340
  @auto_scaling_group_tags.setter
340
- def auto_scaling_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
341
+ def auto_scaling_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
341
342
  pulumi.set(self, "auto_scaling_group_tags", value)
342
343
 
343
344
  @property
344
345
  @pulumi.getter(name="bootstrapExtraArgs")
345
- def bootstrap_extra_args(self) -> Optional[pulumi.Input[str]]:
346
+ def bootstrap_extra_args(self) -> Optional[pulumi.Input[builtins.str]]:
346
347
  """
347
348
  Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
348
349
  """
349
350
  return pulumi.get(self, "bootstrap_extra_args")
350
351
 
351
352
  @bootstrap_extra_args.setter
352
- def bootstrap_extra_args(self, value: Optional[pulumi.Input[str]]):
353
+ def bootstrap_extra_args(self, value: Optional[pulumi.Input[builtins.str]]):
353
354
  pulumi.set(self, "bootstrap_extra_args", value)
354
355
 
355
356
  @property
@@ -375,7 +376,7 @@ class NodeGroupV2Args:
375
376
 
376
377
  @property
377
378
  @pulumi.getter(name="cloudFormationTags")
378
- def cloud_formation_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
379
+ def cloud_formation_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
379
380
  """
380
381
  The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
381
382
 
@@ -384,7 +385,7 @@ class NodeGroupV2Args:
384
385
  return pulumi.get(self, "cloud_formation_tags")
385
386
 
386
387
  @cloud_formation_tags.setter
387
- def cloud_formation_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
388
+ def cloud_formation_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
388
389
  pulumi.set(self, "cloud_formation_tags", value)
389
390
 
390
391
  @property
@@ -401,31 +402,31 @@ class NodeGroupV2Args:
401
402
 
402
403
  @property
403
404
  @pulumi.getter(name="clusterIngressRuleId")
404
- def cluster_ingress_rule_id(self) -> Optional[pulumi.Input[str]]:
405
+ def cluster_ingress_rule_id(self) -> Optional[pulumi.Input[builtins.str]]:
405
406
  """
406
407
  The ID of the ingress rule that gives node group access.
407
408
  """
408
409
  return pulumi.get(self, "cluster_ingress_rule_id")
409
410
 
410
411
  @cluster_ingress_rule_id.setter
411
- def cluster_ingress_rule_id(self, value: Optional[pulumi.Input[str]]):
412
+ def cluster_ingress_rule_id(self, value: Optional[pulumi.Input[builtins.str]]):
412
413
  pulumi.set(self, "cluster_ingress_rule_id", value)
413
414
 
414
415
  @property
415
416
  @pulumi.getter(name="desiredCapacity")
416
- def desired_capacity(self) -> Optional[pulumi.Input[int]]:
417
+ def desired_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
417
418
  """
418
419
  The number of worker nodes that should be running in the cluster. Defaults to 2.
419
420
  """
420
421
  return pulumi.get(self, "desired_capacity")
421
422
 
422
423
  @desired_capacity.setter
423
- def desired_capacity(self, value: Optional[pulumi.Input[int]]):
424
+ def desired_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
424
425
  pulumi.set(self, "desired_capacity", value)
425
426
 
426
427
  @property
427
428
  @pulumi.getter(name="enableDetailedMonitoring")
428
- def enable_detailed_monitoring(self) -> Optional[pulumi.Input[bool]]:
429
+ def enable_detailed_monitoring(self) -> Optional[pulumi.Input[builtins.bool]]:
429
430
  """
430
431
  Enables/disables detailed monitoring of the EC2 instances.
431
432
 
@@ -438,19 +439,19 @@ class NodeGroupV2Args:
438
439
  return pulumi.get(self, "enable_detailed_monitoring")
439
440
 
440
441
  @enable_detailed_monitoring.setter
441
- def enable_detailed_monitoring(self, value: Optional[pulumi.Input[bool]]):
442
+ def enable_detailed_monitoring(self, value: Optional[pulumi.Input[builtins.bool]]):
442
443
  pulumi.set(self, "enable_detailed_monitoring", value)
443
444
 
444
445
  @property
445
446
  @pulumi.getter(name="encryptRootBlockDevice")
446
- def encrypt_root_block_device(self) -> Optional[pulumi.Input[bool]]:
447
+ def encrypt_root_block_device(self) -> Optional[pulumi.Input[builtins.bool]]:
447
448
  """
448
449
  Encrypt the root block device of the nodes in the node group.
449
450
  """
450
451
  return pulumi.get(self, "encrypt_root_block_device")
451
452
 
452
453
  @encrypt_root_block_device.setter
453
- def encrypt_root_block_device(self, value: Optional[pulumi.Input[bool]]):
454
+ def encrypt_root_block_device(self, value: Optional[pulumi.Input[builtins.bool]]):
454
455
  pulumi.set(self, "encrypt_root_block_device", value)
455
456
 
456
457
  @property
@@ -469,7 +470,7 @@ class NodeGroupV2Args:
469
470
 
470
471
  @property
471
472
  @pulumi.getter
472
- def gpu(self) -> Optional[pulumi.Input[bool]]:
473
+ def gpu(self) -> Optional[pulumi.Input[builtins.bool]]:
473
474
  """
474
475
  Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
475
476
 
@@ -484,12 +485,12 @@ class NodeGroupV2Args:
484
485
  return pulumi.get(self, "gpu")
485
486
 
486
487
  @gpu.setter
487
- def gpu(self, value: Optional[pulumi.Input[bool]]):
488
+ def gpu(self, value: Optional[pulumi.Input[builtins.bool]]):
488
489
  pulumi.set(self, "gpu", value)
489
490
 
490
491
  @property
491
492
  @pulumi.getter(name="ignoreScalingChanges")
492
- def ignore_scaling_changes(self) -> Optional[bool]:
493
+ def ignore_scaling_changes(self) -> Optional[builtins.bool]:
493
494
  """
494
495
  Whether to ignore changes to the desired size of the Auto Scaling Group. This is useful when using Cluster Autoscaler.
495
496
 
@@ -498,7 +499,7 @@ class NodeGroupV2Args:
498
499
  return pulumi.get(self, "ignore_scaling_changes")
499
500
 
500
501
  @ignore_scaling_changes.setter
501
- def ignore_scaling_changes(self, value: Optional[bool]):
502
+ def ignore_scaling_changes(self, value: Optional[builtins.bool]):
502
503
  pulumi.set(self, "ignore_scaling_changes", value)
503
504
 
504
505
  @property
@@ -515,62 +516,62 @@ class NodeGroupV2Args:
515
516
 
516
517
  @property
517
518
  @pulumi.getter(name="instanceProfileName")
518
- def instance_profile_name(self) -> Optional[pulumi.Input[str]]:
519
+ def instance_profile_name(self) -> Optional[pulumi.Input[builtins.str]]:
519
520
  """
520
521
  The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
521
522
  """
522
523
  return pulumi.get(self, "instance_profile_name")
523
524
 
524
525
  @instance_profile_name.setter
525
- def instance_profile_name(self, value: Optional[pulumi.Input[str]]):
526
+ def instance_profile_name(self, value: Optional[pulumi.Input[builtins.str]]):
526
527
  pulumi.set(self, "instance_profile_name", value)
527
528
 
528
529
  @property
529
530
  @pulumi.getter(name="instanceType")
530
- def instance_type(self) -> Optional[pulumi.Input[str]]:
531
+ def instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
531
532
  """
532
533
  The instance type to use for the cluster's nodes. Defaults to "t3.medium".
533
534
  """
534
535
  return pulumi.get(self, "instance_type")
535
536
 
536
537
  @instance_type.setter
537
- def instance_type(self, value: Optional[pulumi.Input[str]]):
538
+ def instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
538
539
  pulumi.set(self, "instance_type", value)
539
540
 
540
541
  @property
541
542
  @pulumi.getter(name="keyName")
542
- def key_name(self) -> Optional[pulumi.Input[str]]:
543
+ def key_name(self) -> Optional[pulumi.Input[builtins.str]]:
543
544
  """
544
545
  Name of the key pair to use for SSH access to worker nodes.
545
546
  """
546
547
  return pulumi.get(self, "key_name")
547
548
 
548
549
  @key_name.setter
549
- def key_name(self, value: Optional[pulumi.Input[str]]):
550
+ def key_name(self, value: Optional[pulumi.Input[builtins.str]]):
550
551
  pulumi.set(self, "key_name", value)
551
552
 
552
553
  @property
553
554
  @pulumi.getter(name="kubeletExtraArgs")
554
- def kubelet_extra_args(self) -> Optional[pulumi.Input[str]]:
555
+ def kubelet_extra_args(self) -> Optional[pulumi.Input[builtins.str]]:
555
556
  """
556
557
  Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
557
558
  """
558
559
  return pulumi.get(self, "kubelet_extra_args")
559
560
 
560
561
  @kubelet_extra_args.setter
561
- def kubelet_extra_args(self, value: Optional[pulumi.Input[str]]):
562
+ def kubelet_extra_args(self, value: Optional[pulumi.Input[builtins.str]]):
562
563
  pulumi.set(self, "kubelet_extra_args", value)
563
564
 
564
565
  @property
565
566
  @pulumi.getter
566
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
567
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
567
568
  """
568
569
  Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
569
570
  """
570
571
  return pulumi.get(self, "labels")
571
572
 
572
573
  @labels.setter
573
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
574
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
574
575
  pulumi.set(self, "labels", value)
575
576
 
576
577
  @property
@@ -587,55 +588,55 @@ class NodeGroupV2Args:
587
588
 
588
589
  @property
589
590
  @pulumi.getter(name="maxSize")
590
- def max_size(self) -> Optional[pulumi.Input[int]]:
591
+ def max_size(self) -> Optional[pulumi.Input[builtins.int]]:
591
592
  """
592
593
  The maximum number of worker nodes running in the cluster. Defaults to 2.
593
594
  """
594
595
  return pulumi.get(self, "max_size")
595
596
 
596
597
  @max_size.setter
597
- def max_size(self, value: Optional[pulumi.Input[int]]):
598
+ def max_size(self, value: Optional[pulumi.Input[builtins.int]]):
598
599
  pulumi.set(self, "max_size", value)
599
600
 
600
601
  @property
601
602
  @pulumi.getter(name="minRefreshPercentage")
602
- def min_refresh_percentage(self) -> Optional[pulumi.Input[int]]:
603
+ def min_refresh_percentage(self) -> Optional[pulumi.Input[builtins.int]]:
603
604
  """
604
605
  The minimum amount of instances that should remain available during an instance refresh, expressed as a percentage. Defaults to 50.
605
606
  """
606
607
  return pulumi.get(self, "min_refresh_percentage")
607
608
 
608
609
  @min_refresh_percentage.setter
609
- def min_refresh_percentage(self, value: Optional[pulumi.Input[int]]):
610
+ def min_refresh_percentage(self, value: Optional[pulumi.Input[builtins.int]]):
610
611
  pulumi.set(self, "min_refresh_percentage", value)
611
612
 
612
613
  @property
613
614
  @pulumi.getter(name="minSize")
614
- def min_size(self) -> Optional[pulumi.Input[int]]:
615
+ def min_size(self) -> Optional[pulumi.Input[builtins.int]]:
615
616
  """
616
617
  The minimum number of worker nodes running in the cluster. Defaults to 1.
617
618
  """
618
619
  return pulumi.get(self, "min_size")
619
620
 
620
621
  @min_size.setter
621
- def min_size(self, value: Optional[pulumi.Input[int]]):
622
+ def min_size(self, value: Optional[pulumi.Input[builtins.int]]):
622
623
  pulumi.set(self, "min_size", value)
623
624
 
624
625
  @property
625
626
  @pulumi.getter(name="nodeAssociatePublicIpAddress")
626
- def node_associate_public_ip_address(self) -> Optional[pulumi.Input[bool]]:
627
+ def node_associate_public_ip_address(self) -> Optional[pulumi.Input[builtins.bool]]:
627
628
  """
628
629
  Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
629
630
  """
630
631
  return pulumi.get(self, "node_associate_public_ip_address")
631
632
 
632
633
  @node_associate_public_ip_address.setter
633
- def node_associate_public_ip_address(self, value: Optional[pulumi.Input[bool]]):
634
+ def node_associate_public_ip_address(self, value: Optional[pulumi.Input[builtins.bool]]):
634
635
  pulumi.set(self, "node_associate_public_ip_address", value)
635
636
 
636
637
  @property
637
638
  @pulumi.getter(name="nodePublicKey")
638
- def node_public_key(self) -> Optional[pulumi.Input[str]]:
639
+ def node_public_key(self) -> Optional[pulumi.Input[builtins.str]]:
639
640
  """
640
641
  Public key material for SSH access to worker nodes. See allowed formats at:
641
642
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
@@ -644,79 +645,79 @@ class NodeGroupV2Args:
644
645
  return pulumi.get(self, "node_public_key")
645
646
 
646
647
  @node_public_key.setter
647
- def node_public_key(self, value: Optional[pulumi.Input[str]]):
648
+ def node_public_key(self, value: Optional[pulumi.Input[builtins.str]]):
648
649
  pulumi.set(self, "node_public_key", value)
649
650
 
650
651
  @property
651
652
  @pulumi.getter(name="nodeRootVolumeDeleteOnTermination")
652
- def node_root_volume_delete_on_termination(self) -> Optional[pulumi.Input[bool]]:
653
+ def node_root_volume_delete_on_termination(self) -> Optional[pulumi.Input[builtins.bool]]:
653
654
  """
654
655
  Whether the root block device should be deleted on termination of the instance. Defaults to true.
655
656
  """
656
657
  return pulumi.get(self, "node_root_volume_delete_on_termination")
657
658
 
658
659
  @node_root_volume_delete_on_termination.setter
659
- def node_root_volume_delete_on_termination(self, value: Optional[pulumi.Input[bool]]):
660
+ def node_root_volume_delete_on_termination(self, value: Optional[pulumi.Input[builtins.bool]]):
660
661
  pulumi.set(self, "node_root_volume_delete_on_termination", value)
661
662
 
662
663
  @property
663
664
  @pulumi.getter(name="nodeRootVolumeEncrypted")
664
- def node_root_volume_encrypted(self) -> Optional[pulumi.Input[bool]]:
665
+ def node_root_volume_encrypted(self) -> Optional[pulumi.Input[builtins.bool]]:
665
666
  """
666
667
  Whether to encrypt a cluster node's root volume. Defaults to false.
667
668
  """
668
669
  return pulumi.get(self, "node_root_volume_encrypted")
669
670
 
670
671
  @node_root_volume_encrypted.setter
671
- def node_root_volume_encrypted(self, value: Optional[pulumi.Input[bool]]):
672
+ def node_root_volume_encrypted(self, value: Optional[pulumi.Input[builtins.bool]]):
672
673
  pulumi.set(self, "node_root_volume_encrypted", value)
673
674
 
674
675
  @property
675
676
  @pulumi.getter(name="nodeRootVolumeIops")
676
- def node_root_volume_iops(self) -> Optional[pulumi.Input[int]]:
677
+ def node_root_volume_iops(self) -> Optional[pulumi.Input[builtins.int]]:
677
678
  """
678
679
  The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
679
680
  """
680
681
  return pulumi.get(self, "node_root_volume_iops")
681
682
 
682
683
  @node_root_volume_iops.setter
683
- def node_root_volume_iops(self, value: Optional[pulumi.Input[int]]):
684
+ def node_root_volume_iops(self, value: Optional[pulumi.Input[builtins.int]]):
684
685
  pulumi.set(self, "node_root_volume_iops", value)
685
686
 
686
687
  @property
687
688
  @pulumi.getter(name="nodeRootVolumeSize")
688
- def node_root_volume_size(self) -> Optional[pulumi.Input[int]]:
689
+ def node_root_volume_size(self) -> Optional[pulumi.Input[builtins.int]]:
689
690
  """
690
691
  The size in GiB of a cluster node's root volume. Defaults to 20.
691
692
  """
692
693
  return pulumi.get(self, "node_root_volume_size")
693
694
 
694
695
  @node_root_volume_size.setter
695
- def node_root_volume_size(self, value: Optional[pulumi.Input[int]]):
696
+ def node_root_volume_size(self, value: Optional[pulumi.Input[builtins.int]]):
696
697
  pulumi.set(self, "node_root_volume_size", value)
697
698
 
698
699
  @property
699
700
  @pulumi.getter(name="nodeRootVolumeThroughput")
700
- def node_root_volume_throughput(self) -> Optional[pulumi.Input[int]]:
701
+ def node_root_volume_throughput(self) -> Optional[pulumi.Input[builtins.int]]:
701
702
  """
702
703
  Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
703
704
  """
704
705
  return pulumi.get(self, "node_root_volume_throughput")
705
706
 
706
707
  @node_root_volume_throughput.setter
707
- def node_root_volume_throughput(self, value: Optional[pulumi.Input[int]]):
708
+ def node_root_volume_throughput(self, value: Optional[pulumi.Input[builtins.int]]):
708
709
  pulumi.set(self, "node_root_volume_throughput", value)
709
710
 
710
711
  @property
711
712
  @pulumi.getter(name="nodeRootVolumeType")
712
- def node_root_volume_type(self) -> Optional[pulumi.Input[str]]:
713
+ def node_root_volume_type(self) -> Optional[pulumi.Input[builtins.str]]:
713
714
  """
714
715
  Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
715
716
  """
716
717
  return pulumi.get(self, "node_root_volume_type")
717
718
 
718
719
  @node_root_volume_type.setter
719
- def node_root_volume_type(self, value: Optional[pulumi.Input[str]]):
720
+ def node_root_volume_type(self, value: Optional[pulumi.Input[builtins.str]]):
720
721
  pulumi.set(self, "node_root_volume_type", value)
721
722
 
722
723
  @property
@@ -740,7 +741,7 @@ class NodeGroupV2Args:
740
741
 
741
742
  @property
742
743
  @pulumi.getter(name="nodeSecurityGroupId")
743
- def node_security_group_id(self) -> Optional[pulumi.Input[str]]:
744
+ def node_security_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
744
745
  """
745
746
  The ID of the security group for the worker node group to communicate with the cluster.
746
747
 
@@ -754,12 +755,12 @@ class NodeGroupV2Args:
754
755
  return pulumi.get(self, "node_security_group_id")
755
756
 
756
757
  @node_security_group_id.setter
757
- def node_security_group_id(self, value: Optional[pulumi.Input[str]]):
758
+ def node_security_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
758
759
  pulumi.set(self, "node_security_group_id", value)
759
760
 
760
761
  @property
761
762
  @pulumi.getter(name="nodeSubnetIds")
762
- def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
763
+ def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
763
764
  """
764
765
  The set of subnets to override and use for the worker node group.
765
766
 
@@ -768,24 +769,24 @@ class NodeGroupV2Args:
768
769
  return pulumi.get(self, "node_subnet_ids")
769
770
 
770
771
  @node_subnet_ids.setter
771
- def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
772
+ def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
772
773
  pulumi.set(self, "node_subnet_ids", value)
773
774
 
774
775
  @property
775
776
  @pulumi.getter(name="nodeUserData")
776
- def node_user_data(self) -> Optional[pulumi.Input[str]]:
777
+ def node_user_data(self) -> Optional[pulumi.Input[builtins.str]]:
777
778
  """
778
779
  Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
779
780
  """
780
781
  return pulumi.get(self, "node_user_data")
781
782
 
782
783
  @node_user_data.setter
783
- def node_user_data(self, value: Optional[pulumi.Input[str]]):
784
+ def node_user_data(self, value: Optional[pulumi.Input[builtins.str]]):
784
785
  pulumi.set(self, "node_user_data", value)
785
786
 
786
787
  @property
787
788
  @pulumi.getter(name="nodeUserDataOverride")
788
- def node_user_data_override(self) -> Optional[pulumi.Input[str]]:
789
+ def node_user_data_override(self) -> Optional[pulumi.Input[builtins.str]]:
789
790
  """
790
791
  User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
791
792
 
@@ -794,7 +795,7 @@ class NodeGroupV2Args:
794
795
  return pulumi.get(self, "node_user_data_override")
795
796
 
796
797
  @node_user_data_override.setter
797
- def node_user_data_override(self, value: Optional[pulumi.Input[str]]):
798
+ def node_user_data_override(self, value: Optional[pulumi.Input[builtins.str]]):
798
799
  pulumi.set(self, "node_user_data_override", value)
799
800
 
800
801
  @property
@@ -836,14 +837,14 @@ class NodeGroupV2Args:
836
837
 
837
838
  @property
838
839
  @pulumi.getter(name="spotPrice")
839
- def spot_price(self) -> Optional[pulumi.Input[str]]:
840
+ def spot_price(self) -> Optional[pulumi.Input[builtins.str]]:
840
841
  """
841
842
  Bidding price for spot instance. If set, only spot instances will be added as worker node.
842
843
  """
843
844
  return pulumi.get(self, "spot_price")
844
845
 
845
846
  @spot_price.setter
846
- def spot_price(self, value: Optional[pulumi.Input[str]]):
847
+ def spot_price(self, value: Optional[pulumi.Input[builtins.str]]):
847
848
  pulumi.set(self, "spot_price", value)
848
849
 
849
850
  @property
@@ -860,72 +861,73 @@ class NodeGroupV2Args:
860
861
 
861
862
  @property
862
863
  @pulumi.getter
863
- def version(self) -> Optional[pulumi.Input[str]]:
864
+ def version(self) -> Optional[pulumi.Input[builtins.str]]:
864
865
  """
865
866
  Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
866
867
  """
867
868
  return pulumi.get(self, "version")
868
869
 
869
870
  @version.setter
870
- def version(self, value: Optional[pulumi.Input[str]]):
871
+ def version(self, value: Optional[pulumi.Input[builtins.str]]):
871
872
  pulumi.set(self, "version", value)
872
873
 
873
874
 
875
+ @pulumi.type_token("eks:index:NodeGroupV2")
874
876
  class NodeGroupV2(pulumi.ComponentResource):
875
877
  @overload
876
878
  def __init__(__self__,
877
879
  resource_name: str,
878
880
  opts: Optional[pulumi.ResourceOptions] = None,
879
- ami_id: Optional[pulumi.Input[str]] = None,
880
- ami_type: Optional[pulumi.Input[str]] = None,
881
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
882
- bootstrap_extra_args: Optional[pulumi.Input[str]] = None,
881
+ ami_id: Optional[pulumi.Input[builtins.str]] = None,
882
+ ami_type: Optional[pulumi.Input[builtins.str]] = None,
883
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
884
+ bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
883
885
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
884
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
886
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
885
887
  cluster: Optional[pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]]] = None,
886
888
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
887
- cluster_ingress_rule_id: Optional[pulumi.Input[str]] = None,
888
- desired_capacity: Optional[pulumi.Input[int]] = None,
889
- enable_detailed_monitoring: Optional[pulumi.Input[bool]] = None,
890
- encrypt_root_block_device: Optional[pulumi.Input[bool]] = None,
889
+ cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
890
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
891
+ enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
892
+ encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
891
893
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
892
- gpu: Optional[pulumi.Input[bool]] = None,
893
- ignore_scaling_changes: Optional[bool] = None,
894
+ gpu: Optional[pulumi.Input[builtins.bool]] = None,
895
+ ignore_scaling_changes: Optional[builtins.bool] = None,
894
896
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
895
- instance_profile_name: Optional[pulumi.Input[str]] = None,
896
- instance_type: Optional[pulumi.Input[str]] = None,
897
- key_name: Optional[pulumi.Input[str]] = None,
898
- kubelet_extra_args: Optional[pulumi.Input[str]] = None,
899
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
897
+ instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
898
+ instance_type: Optional[pulumi.Input[builtins.str]] = None,
899
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
900
+ kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
901
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
900
902
  launch_template_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['pulumi_aws.ec2.LaunchTemplateTagSpecificationArgs']]]]] = None,
901
- max_size: Optional[pulumi.Input[int]] = None,
902
- min_refresh_percentage: Optional[pulumi.Input[int]] = None,
903
- min_size: Optional[pulumi.Input[int]] = None,
904
- node_associate_public_ip_address: Optional[pulumi.Input[bool]] = None,
905
- node_public_key: Optional[pulumi.Input[str]] = None,
906
- node_root_volume_delete_on_termination: Optional[pulumi.Input[bool]] = None,
907
- node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
908
- node_root_volume_iops: Optional[pulumi.Input[int]] = None,
909
- node_root_volume_size: Optional[pulumi.Input[int]] = None,
910
- node_root_volume_throughput: Optional[pulumi.Input[int]] = None,
911
- node_root_volume_type: Optional[pulumi.Input[str]] = None,
903
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
904
+ min_refresh_percentage: Optional[pulumi.Input[builtins.int]] = None,
905
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
906
+ node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
907
+ node_public_key: Optional[pulumi.Input[builtins.str]] = None,
908
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
909
+ node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
910
+ node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
911
+ node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
912
+ node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
913
+ node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
912
914
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
913
- node_security_group_id: Optional[pulumi.Input[str]] = None,
914
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
915
- node_user_data: Optional[pulumi.Input[str]] = None,
916
- node_user_data_override: Optional[pulumi.Input[str]] = None,
915
+ node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
916
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
917
+ node_user_data: Optional[pulumi.Input[builtins.str]] = None,
918
+ node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
917
919
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]]] = None,
918
920
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
919
- spot_price: Optional[pulumi.Input[str]] = None,
921
+ spot_price: Optional[pulumi.Input[builtins.str]] = None,
920
922
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]]] = None,
921
- version: Optional[pulumi.Input[str]] = None,
923
+ version: Optional[pulumi.Input[builtins.str]] = None,
922
924
  __props__=None):
923
925
  """
924
926
  NodeGroup is a component that wraps the AWS EC2 instances that provide compute capacity for an EKS cluster.
925
927
 
926
928
  :param str resource_name: The name of the resource.
927
929
  :param pulumi.ResourceOptions opts: Options for the resource.
928
- :param pulumi.Input[str] ami_id: The AMI ID to use for the worker nodes.
930
+ :param pulumi.Input[builtins.str] ami_id: The AMI ID to use for the worker nodes.
929
931
 
930
932
  Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
931
933
 
@@ -933,17 +935,17 @@ class NodeGroupV2(pulumi.ComponentResource):
933
935
 
934
936
  See for more details:
935
937
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
936
- :param pulumi.Input[str] ami_type: The AMI Type to use for the worker nodes.
938
+ :param pulumi.Input[builtins.str] ami_type: The AMI Type to use for the worker nodes.
937
939
 
938
940
  Only applicable when setting an AMI ID that is of type `arm64`.
939
941
 
940
942
  Note: `amiType` and `gpu` are mutually exclusive.
941
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
943
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] auto_scaling_group_tags: The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
942
944
 
943
945
  Per AWS, all stack-level tags, including automatically created tags, and the `cloudFormationTags` option are propagated to resources that AWS CloudFormation supports, including the AutoScalingGroup. See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html
944
946
 
945
947
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
946
- :param pulumi.Input[str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
948
+ :param pulumi.Input[builtins.str] bootstrap_extra_args: Additional args to pass directly to `/etc/eks/bootstrap.sh`. For details on available options, see: https://github.com/awslabs/amazon-eks-ami/blob/master/files/bootstrap.sh. Note that the `--apiserver-endpoint`, `--b64-cluster-ca` and `--kubelet-extra-args` flags are included automatically based on other configuration parameters.
947
949
  :param pulumi.Input[Mapping[str, Any]] bottlerocket_settings: The configuration settings for Bottlerocket OS.
948
950
  The settings will get merged with the base settings the provider uses to configure Bottlerocket.
949
951
 
@@ -954,25 +956,25 @@ class NodeGroupV2(pulumi.ComponentResource):
954
956
  - settings.kubernetes.cluster-dns-ip
955
957
 
956
958
  For an overview of the available settings, see https://bottlerocket.dev/en/os/1.20.x/api/settings/.
957
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
959
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
958
960
 
959
961
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
960
962
  :param pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]] cluster: The target EKS cluster.
961
963
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroupRule'] cluster_ingress_rule: The ingress rule that gives node group access.
962
- :param pulumi.Input[str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
963
- :param pulumi.Input[int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
964
- :param pulumi.Input[bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
964
+ :param pulumi.Input[builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
965
+ :param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
966
+ :param pulumi.Input[builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
965
967
 
966
968
  With detailed monitoring, all metrics, including status check metrics, are available in 1-minute intervals.
967
969
  When enabled, you can also get aggregated data across groups of similar instances.
968
970
 
969
971
  Note: You are charged per metric that is sent to CloudWatch. You are not charged for data storage.
970
972
  For more information, see "Paid tier" and "Example 1 - EC2 Detailed Monitoring" here https://aws.amazon.com/cloudwatch/pricing/.
971
- :param pulumi.Input[bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
973
+ :param pulumi.Input[builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
972
974
  :param pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]] extra_node_security_groups: Extra security groups to attach on all nodes in this worker node group.
973
975
 
974
976
  This additional set of security groups captures any user application rules that will be needed for the nodes.
975
- :param pulumi.Input[bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
977
+ :param pulumi.Input[builtins.bool] gpu: Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
976
978
 
977
979
  Defaults to false.
978
980
 
@@ -981,29 +983,29 @@ class NodeGroupV2(pulumi.ComponentResource):
981
983
  See for more details:
982
984
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
983
985
  - https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
984
- :param bool ignore_scaling_changes: Whether to ignore changes to the desired size of the Auto Scaling Group. This is useful when using Cluster Autoscaler.
986
+ :param builtins.bool ignore_scaling_changes: Whether to ignore changes to the desired size of the Auto Scaling Group. This is useful when using Cluster Autoscaler.
985
987
 
986
988
  See [EKS best practices](https://aws.github.io/aws-eks-best-practices/cluster-autoscaling/) for more details.
987
989
  :param 'pulumi_aws.iam.InstanceProfile' instance_profile: The IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
988
- :param pulumi.Input[str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
989
- :param pulumi.Input[str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
990
- :param pulumi.Input[str] key_name: Name of the key pair to use for SSH access to worker nodes.
991
- :param pulumi.Input[str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
992
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
990
+ :param pulumi.Input[builtins.str] instance_profile_name: The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
991
+ :param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
992
+ :param pulumi.Input[builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
993
+ :param pulumi.Input[builtins.str] kubelet_extra_args: Extra args to pass to the Kubelet. Corresponds to the options passed in the `--kubeletExtraArgs` flag to `/etc/eks/bootstrap.sh`. For example, '--port=10251 --address=0.0.0.0'. Note that the `labels` and `taints` properties will be applied to this list (using `--node-labels` and `--register-with-taints` respectively) after to the explicit `kubeletExtraArgs`.
994
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] labels: Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
993
995
  :param pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['pulumi_aws.ec2.LaunchTemplateTagSpecificationArgs']]]] launch_template_tag_specifications: The tag specifications to apply to the launch template.
994
- :param pulumi.Input[int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
995
- :param pulumi.Input[int] min_refresh_percentage: The minimum amount of instances that should remain available during an instance refresh, expressed as a percentage. Defaults to 50.
996
- :param pulumi.Input[int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
997
- :param pulumi.Input[bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
998
- :param pulumi.Input[str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
996
+ :param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
997
+ :param pulumi.Input[builtins.int] min_refresh_percentage: The minimum amount of instances that should remain available during an instance refresh, expressed as a percentage. Defaults to 50.
998
+ :param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
999
+ :param pulumi.Input[builtins.bool] node_associate_public_ip_address: Whether or not to auto-assign public IP addresses on the EKS worker nodes. If this toggle is set to true, the EKS workers will be auto-assigned public IPs. If false, they will not be auto-assigned public IPs.
1000
+ :param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
999
1001
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
1000
1002
  If not provided, no SSH access is enabled on VMs.
1001
- :param pulumi.Input[bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
1002
- :param pulumi.Input[bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
1003
- :param pulumi.Input[int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
1004
- :param pulumi.Input[int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
1005
- :param pulumi.Input[int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
1006
- :param pulumi.Input[str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
1003
+ :param pulumi.Input[builtins.bool] node_root_volume_delete_on_termination: Whether the root block device should be deleted on termination of the instance. Defaults to true.
1004
+ :param pulumi.Input[builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
1005
+ :param pulumi.Input[builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
1006
+ :param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
1007
+ :param pulumi.Input[builtins.int] node_root_volume_throughput: Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
1008
+ :param pulumi.Input[builtins.str] node_root_volume_type: Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
1007
1009
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] node_security_group: The security group for the worker node group to communicate with the cluster.
1008
1010
 
1009
1011
  This security group requires specific inbound and outbound rules.
@@ -1012,7 +1014,7 @@ class NodeGroupV2(pulumi.ComponentResource):
1012
1014
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
1013
1015
 
1014
1016
  Note: The `nodeSecurityGroup` option and the cluster option`nodeSecurityGroupTags` are mutually exclusive.
1015
- :param pulumi.Input[str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
1017
+ :param pulumi.Input[builtins.str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
1016
1018
 
1017
1019
  This security group requires specific inbound and outbound rules.
1018
1020
 
@@ -1020,11 +1022,11 @@ class NodeGroupV2(pulumi.ComponentResource):
1020
1022
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
1021
1023
 
1022
1024
  Note: The `nodeSecurityGroupId` option and the cluster option `nodeSecurityGroupTags` are mutually exclusive.
1023
- :param pulumi.Input[Sequence[pulumi.Input[str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
1025
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
1024
1026
 
1025
1027
  Setting this option overrides which subnets to use for the worker node group, regardless if the cluster's `subnetIds` is set, or if `publicSubnetIds` and/or `privateSubnetIds` were set.
1026
- :param pulumi.Input[str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
1027
- :param pulumi.Input[str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
1028
+ :param pulumi.Input[builtins.str] node_user_data: Extra code to run on node startup. This code will run after the AWS EKS bootstrapping code and before the node signals its readiness to the managing CloudFormation stack. This code must be a typical user data script: critically it must begin with an interpreter directive (i.e. a `#!`).
1029
+ :param pulumi.Input[builtins.str] node_user_data_override: User specified code to run on node startup. This code is expected to handle the full AWS EKS bootstrapping code and signal node readiness to the managing CloudFormation stack. This code must be a complete and executable user data script in bash (Linux) or powershell (Windows).
1028
1030
 
1029
1031
  See for more details: https://docs.aws.amazon.com/eks/latest/userguide/worker.html
1030
1032
  :param pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]] nodeadm_extra_options: Extra nodeadm configuration sections to be added to the nodeadm user data. This can be shell scripts, nodeadm NodeConfig or any other user data compatible script. When configuring additional nodeadm NodeConfig sections, they'll be merged with the base settings the provider sets. You can overwrite base settings or provide additional settings this way.
@@ -1042,9 +1044,9 @@ class NodeGroupV2(pulumi.ComponentResource):
1042
1044
  Valid values are `RECOMMENDED`, `AL2`, `AL2023` and `Bottlerocket`.
1043
1045
 
1044
1046
  Defaults to the current recommended OS.
1045
- :param pulumi.Input[str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
1047
+ :param pulumi.Input[builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
1046
1048
  :param pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]] taints: Custom k8s node taints to be attached to each worker node. Adds the given taints to the `--register-with-taints` kubelet argument
1047
- :param pulumi.Input[str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
1049
+ :param pulumi.Input[builtins.str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
1048
1050
  """
1049
1051
  ...
1050
1052
  @overload
@@ -1070,49 +1072,49 @@ class NodeGroupV2(pulumi.ComponentResource):
1070
1072
  def _internal_init(__self__,
1071
1073
  resource_name: str,
1072
1074
  opts: Optional[pulumi.ResourceOptions] = None,
1073
- ami_id: Optional[pulumi.Input[str]] = None,
1074
- ami_type: Optional[pulumi.Input[str]] = None,
1075
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1076
- bootstrap_extra_args: Optional[pulumi.Input[str]] = None,
1075
+ ami_id: Optional[pulumi.Input[builtins.str]] = None,
1076
+ ami_type: Optional[pulumi.Input[builtins.str]] = None,
1077
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1078
+ bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
1077
1079
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1078
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1080
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1079
1081
  cluster: Optional[pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]]] = None,
1080
1082
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
1081
- cluster_ingress_rule_id: Optional[pulumi.Input[str]] = None,
1082
- desired_capacity: Optional[pulumi.Input[int]] = None,
1083
- enable_detailed_monitoring: Optional[pulumi.Input[bool]] = None,
1084
- encrypt_root_block_device: Optional[pulumi.Input[bool]] = None,
1083
+ cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
1084
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
1085
+ enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
1086
+ encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
1085
1087
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
1086
- gpu: Optional[pulumi.Input[bool]] = None,
1087
- ignore_scaling_changes: Optional[bool] = None,
1088
+ gpu: Optional[pulumi.Input[builtins.bool]] = None,
1089
+ ignore_scaling_changes: Optional[builtins.bool] = None,
1088
1090
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
1089
- instance_profile_name: Optional[pulumi.Input[str]] = None,
1090
- instance_type: Optional[pulumi.Input[str]] = None,
1091
- key_name: Optional[pulumi.Input[str]] = None,
1092
- kubelet_extra_args: Optional[pulumi.Input[str]] = None,
1093
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1091
+ instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
1092
+ instance_type: Optional[pulumi.Input[builtins.str]] = None,
1093
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
1094
+ kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
1095
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1094
1096
  launch_template_tag_specifications: Optional[pulumi.Input[Sequence[pulumi.Input[pulumi.InputType['pulumi_aws.ec2.LaunchTemplateTagSpecificationArgs']]]]] = None,
1095
- max_size: Optional[pulumi.Input[int]] = None,
1096
- min_refresh_percentage: Optional[pulumi.Input[int]] = None,
1097
- min_size: Optional[pulumi.Input[int]] = None,
1098
- node_associate_public_ip_address: Optional[pulumi.Input[bool]] = None,
1099
- node_public_key: Optional[pulumi.Input[str]] = None,
1100
- node_root_volume_delete_on_termination: Optional[pulumi.Input[bool]] = None,
1101
- node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
1102
- node_root_volume_iops: Optional[pulumi.Input[int]] = None,
1103
- node_root_volume_size: Optional[pulumi.Input[int]] = None,
1104
- node_root_volume_throughput: Optional[pulumi.Input[int]] = None,
1105
- node_root_volume_type: Optional[pulumi.Input[str]] = None,
1097
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
1098
+ min_refresh_percentage: Optional[pulumi.Input[builtins.int]] = None,
1099
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
1100
+ node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
1101
+ node_public_key: Optional[pulumi.Input[builtins.str]] = None,
1102
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
1103
+ node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
1104
+ node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
1105
+ node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
1106
+ node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
1107
+ node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
1106
1108
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
1107
- node_security_group_id: Optional[pulumi.Input[str]] = None,
1108
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1109
- node_user_data: Optional[pulumi.Input[str]] = None,
1110
- node_user_data_override: Optional[pulumi.Input[str]] = None,
1109
+ node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
1110
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1111
+ node_user_data: Optional[pulumi.Input[builtins.str]] = None,
1112
+ node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
1111
1113
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]]] = None,
1112
1114
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
1113
- spot_price: Optional[pulumi.Input[str]] = None,
1115
+ spot_price: Optional[pulumi.Input[builtins.str]] = None,
1114
1116
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]]] = None,
1115
- version: Optional[pulumi.Input[str]] = None,
1117
+ version: Optional[pulumi.Input[builtins.str]] = None,
1116
1118
  __props__=None):
1117
1119
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
1118
1120
  if not isinstance(opts, pulumi.ResourceOptions):
@@ -1203,7 +1205,7 @@ class NodeGroupV2(pulumi.ComponentResource):
1203
1205
 
1204
1206
  @property
1205
1207
  @pulumi.getter(name="nodeSecurityGroupId")
1206
- def node_security_group_id(self) -> pulumi.Output[str]:
1208
+ def node_security_group_id(self) -> pulumi.Output[builtins.str]:
1207
1209
  """
1208
1210
  The ID of the security group for the node group to communicate with the cluster.
1209
1211
  """