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.
pulumi_eks/node_group.py CHANGED
@@ -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,49 +27,49 @@ __all__ = ['NodeGroupArgs', 'NodeGroup']
26
27
  class NodeGroupArgs:
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
+ gpu: Optional[pulumi.Input[builtins.bool]] = None,
42
43
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
43
- instance_profile_name: Optional[pulumi.Input[str]] = None,
44
- instance_type: Optional[pulumi.Input[str]] = None,
45
- key_name: Optional[pulumi.Input[str]] = None,
46
- kubelet_extra_args: Optional[pulumi.Input[str]] = None,
47
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
48
- max_size: Optional[pulumi.Input[int]] = None,
49
- min_size: Optional[pulumi.Input[int]] = None,
50
- node_associate_public_ip_address: Optional[pulumi.Input[bool]] = None,
51
- node_public_key: Optional[pulumi.Input[str]] = None,
52
- node_root_volume_delete_on_termination: Optional[pulumi.Input[bool]] = None,
53
- node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
54
- node_root_volume_iops: Optional[pulumi.Input[int]] = None,
55
- node_root_volume_size: Optional[pulumi.Input[int]] = None,
56
- node_root_volume_throughput: Optional[pulumi.Input[int]] = None,
57
- node_root_volume_type: Optional[pulumi.Input[str]] = None,
44
+ instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
45
+ instance_type: Optional[pulumi.Input[builtins.str]] = None,
46
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
47
+ kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
48
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
49
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
50
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
51
+ node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
52
+ node_public_key: Optional[pulumi.Input[builtins.str]] = None,
53
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
54
+ node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
55
+ node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
56
+ node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
57
+ node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
58
+ node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
58
59
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
59
- node_security_group_id: Optional[pulumi.Input[str]] = None,
60
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
61
- node_user_data: Optional[pulumi.Input[str]] = None,
62
- node_user_data_override: Optional[pulumi.Input[str]] = None,
60
+ node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
61
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
62
+ node_user_data: Optional[pulumi.Input[builtins.str]] = None,
63
+ node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
63
64
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input['NodeadmOptionsArgs']]]] = None,
64
65
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
65
- spot_price: Optional[pulumi.Input[str]] = None,
66
+ spot_price: Optional[pulumi.Input[builtins.str]] = None,
66
67
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input['TaintArgs']]]] = None,
67
- version: Optional[pulumi.Input[str]] = None):
68
+ version: Optional[pulumi.Input[builtins.str]] = None):
68
69
  """
69
70
  The set of arguments for constructing a NodeGroup resource.
70
71
  :param pulumi.Input[Union['Cluster', 'CoreDataArgs']] cluster: The target EKS cluster.
71
- :param pulumi.Input[str] ami_id: The AMI ID to use for the worker nodes.
72
+ :param pulumi.Input[builtins.str] ami_id: The AMI ID to use for the worker nodes.
72
73
 
73
74
  Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
74
75
 
@@ -76,17 +77,17 @@ class NodeGroupArgs:
76
77
 
77
78
  See for more details:
78
79
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
79
- :param pulumi.Input[str] ami_type: The AMI Type to use for the worker nodes.
80
+ :param pulumi.Input[builtins.str] ami_type: The AMI Type to use for the worker nodes.
80
81
 
81
82
  Only applicable when setting an AMI ID that is of type `arm64`.
82
83
 
83
84
  Note: `amiType` and `gpu` are mutually exclusive.
84
- :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.
85
+ :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.
85
86
 
86
87
  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
87
88
 
88
89
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
89
- :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.
90
+ :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.
90
91
  :param pulumi.Input[Mapping[str, Any]] bottlerocket_settings: The configuration settings for Bottlerocket OS.
91
92
  The settings will get merged with the base settings the provider uses to configure Bottlerocket.
92
93
 
@@ -97,24 +98,24 @@ class NodeGroupArgs:
97
98
  - settings.kubernetes.cluster-dns-ip
98
99
 
99
100
  For an overview of the available settings, see https://bottlerocket.dev/en/os/1.20.x/api/settings/.
100
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
101
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
101
102
 
102
103
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
103
104
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroupRule'] cluster_ingress_rule: The ingress rule that gives node group access.
104
- :param pulumi.Input[str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
105
- :param pulumi.Input[int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
106
- :param pulumi.Input[bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
105
+ :param pulumi.Input[builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
106
+ :param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
107
+ :param pulumi.Input[builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
107
108
 
108
109
  With detailed monitoring, all metrics, including status check metrics, are available in 1-minute intervals.
109
110
  When enabled, you can also get aggregated data across groups of similar instances.
110
111
 
111
112
  Note: You are charged per metric that is sent to CloudWatch. You are not charged for data storage.
112
113
  For more information, see "Paid tier" and "Example 1 - EC2 Detailed Monitoring" here https://aws.amazon.com/cloudwatch/pricing/.
113
- :param pulumi.Input[bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
114
+ :param pulumi.Input[builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
114
115
  :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.
115
116
 
116
117
  This additional set of security groups captures any user application rules that will be needed for the nodes.
117
- :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.
118
+ :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.
118
119
 
119
120
  Defaults to false.
120
121
 
@@ -124,23 +125,23 @@ class NodeGroupArgs:
124
125
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
125
126
  - https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
126
127
  :param 'pulumi_aws.iam.InstanceProfile' instance_profile: The IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
127
- :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.
128
- :param pulumi.Input[str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
129
- :param pulumi.Input[str] key_name: Name of the key pair to use for SSH access to worker nodes.
130
- :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`.
131
- :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.
132
- :param pulumi.Input[int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
133
- :param pulumi.Input[int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
134
- :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.
135
- :param pulumi.Input[str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
128
+ :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.
129
+ :param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
130
+ :param pulumi.Input[builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
131
+ :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`.
132
+ :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.
133
+ :param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
134
+ :param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
135
+ :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.
136
+ :param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
136
137
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
137
138
  If not provided, no SSH access is enabled on VMs.
138
- :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.
139
- :param pulumi.Input[bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
140
- :param pulumi.Input[int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
141
- :param pulumi.Input[int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
142
- :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'.
143
- :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'.
139
+ :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.
140
+ :param pulumi.Input[builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
141
+ :param pulumi.Input[builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
142
+ :param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
143
+ :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'.
144
+ :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'.
144
145
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] node_security_group: The security group for the worker node group to communicate with the cluster.
145
146
 
146
147
  This security group requires specific inbound and outbound rules.
@@ -149,7 +150,7 @@ class NodeGroupArgs:
149
150
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
150
151
 
151
152
  Note: The `nodeSecurityGroup` option and the cluster option`nodeSecurityGroupTags` are mutually exclusive.
152
- :param pulumi.Input[str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
153
+ :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.
153
154
 
154
155
  This security group requires specific inbound and outbound rules.
155
156
 
@@ -157,11 +158,11 @@ class NodeGroupArgs:
157
158
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
158
159
 
159
160
  Note: The `nodeSecurityGroupId` option and the cluster option `nodeSecurityGroupTags` are mutually exclusive.
160
- :param pulumi.Input[Sequence[pulumi.Input[str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
161
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
161
162
 
162
163
  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.
163
- :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 `#!`).
164
- :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).
164
+ :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 `#!`).
165
+ :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).
165
166
 
166
167
  See for more details: https://docs.aws.amazon.com/eks/latest/userguide/worker.html
167
168
  :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.
@@ -179,9 +180,9 @@ class NodeGroupArgs:
179
180
  Valid values are `RECOMMENDED`, `AL2`, `AL2023` and `Bottlerocket`.
180
181
 
181
182
  Defaults to the current recommended OS.
182
- :param pulumi.Input[str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
183
+ :param pulumi.Input[builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
183
184
  :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
184
- :param pulumi.Input[str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
185
+ :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.
185
186
  """
186
187
  pulumi.set(__self__, "cluster", cluster)
187
188
  if ami_id is not None:
@@ -277,7 +278,7 @@ class NodeGroupArgs:
277
278
 
278
279
  @property
279
280
  @pulumi.getter(name="amiId")
280
- def ami_id(self) -> Optional[pulumi.Input[str]]:
281
+ def ami_id(self) -> Optional[pulumi.Input[builtins.str]]:
281
282
  """
282
283
  The AMI ID to use for the worker nodes.
283
284
 
@@ -291,12 +292,12 @@ class NodeGroupArgs:
291
292
  return pulumi.get(self, "ami_id")
292
293
 
293
294
  @ami_id.setter
294
- def ami_id(self, value: Optional[pulumi.Input[str]]):
295
+ def ami_id(self, value: Optional[pulumi.Input[builtins.str]]):
295
296
  pulumi.set(self, "ami_id", value)
296
297
 
297
298
  @property
298
299
  @pulumi.getter(name="amiType")
299
- def ami_type(self) -> Optional[pulumi.Input[str]]:
300
+ def ami_type(self) -> Optional[pulumi.Input[builtins.str]]:
300
301
  """
301
302
  The AMI Type to use for the worker nodes.
302
303
 
@@ -307,12 +308,12 @@ class NodeGroupArgs:
307
308
  return pulumi.get(self, "ami_type")
308
309
 
309
310
  @ami_type.setter
310
- def ami_type(self, value: Optional[pulumi.Input[str]]):
311
+ def ami_type(self, value: Optional[pulumi.Input[builtins.str]]):
311
312
  pulumi.set(self, "ami_type", value)
312
313
 
313
314
  @property
314
315
  @pulumi.getter(name="autoScalingGroupTags")
315
- def auto_scaling_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
316
+ def auto_scaling_group_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
316
317
  """
317
318
  The tags to apply to the NodeGroup's AutoScalingGroup in the CloudFormation Stack.
318
319
 
@@ -323,19 +324,19 @@ class NodeGroupArgs:
323
324
  return pulumi.get(self, "auto_scaling_group_tags")
324
325
 
325
326
  @auto_scaling_group_tags.setter
326
- def auto_scaling_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
327
+ def auto_scaling_group_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
327
328
  pulumi.set(self, "auto_scaling_group_tags", value)
328
329
 
329
330
  @property
330
331
  @pulumi.getter(name="bootstrapExtraArgs")
331
- def bootstrap_extra_args(self) -> Optional[pulumi.Input[str]]:
332
+ def bootstrap_extra_args(self) -> Optional[pulumi.Input[builtins.str]]:
332
333
  """
333
334
  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.
334
335
  """
335
336
  return pulumi.get(self, "bootstrap_extra_args")
336
337
 
337
338
  @bootstrap_extra_args.setter
338
- def bootstrap_extra_args(self, value: Optional[pulumi.Input[str]]):
339
+ def bootstrap_extra_args(self, value: Optional[pulumi.Input[builtins.str]]):
339
340
  pulumi.set(self, "bootstrap_extra_args", value)
340
341
 
341
342
  @property
@@ -361,7 +362,7 @@ class NodeGroupArgs:
361
362
 
362
363
  @property
363
364
  @pulumi.getter(name="cloudFormationTags")
364
- def cloud_formation_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
365
+ def cloud_formation_tags(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
365
366
  """
366
367
  The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
367
368
 
@@ -370,7 +371,7 @@ class NodeGroupArgs:
370
371
  return pulumi.get(self, "cloud_formation_tags")
371
372
 
372
373
  @cloud_formation_tags.setter
373
- def cloud_formation_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
374
+ def cloud_formation_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
374
375
  pulumi.set(self, "cloud_formation_tags", value)
375
376
 
376
377
  @property
@@ -387,31 +388,31 @@ class NodeGroupArgs:
387
388
 
388
389
  @property
389
390
  @pulumi.getter(name="clusterIngressRuleId")
390
- def cluster_ingress_rule_id(self) -> Optional[pulumi.Input[str]]:
391
+ def cluster_ingress_rule_id(self) -> Optional[pulumi.Input[builtins.str]]:
391
392
  """
392
393
  The ID of the ingress rule that gives node group access.
393
394
  """
394
395
  return pulumi.get(self, "cluster_ingress_rule_id")
395
396
 
396
397
  @cluster_ingress_rule_id.setter
397
- def cluster_ingress_rule_id(self, value: Optional[pulumi.Input[str]]):
398
+ def cluster_ingress_rule_id(self, value: Optional[pulumi.Input[builtins.str]]):
398
399
  pulumi.set(self, "cluster_ingress_rule_id", value)
399
400
 
400
401
  @property
401
402
  @pulumi.getter(name="desiredCapacity")
402
- def desired_capacity(self) -> Optional[pulumi.Input[int]]:
403
+ def desired_capacity(self) -> Optional[pulumi.Input[builtins.int]]:
403
404
  """
404
405
  The number of worker nodes that should be running in the cluster. Defaults to 2.
405
406
  """
406
407
  return pulumi.get(self, "desired_capacity")
407
408
 
408
409
  @desired_capacity.setter
409
- def desired_capacity(self, value: Optional[pulumi.Input[int]]):
410
+ def desired_capacity(self, value: Optional[pulumi.Input[builtins.int]]):
410
411
  pulumi.set(self, "desired_capacity", value)
411
412
 
412
413
  @property
413
414
  @pulumi.getter(name="enableDetailedMonitoring")
414
- def enable_detailed_monitoring(self) -> Optional[pulumi.Input[bool]]:
415
+ def enable_detailed_monitoring(self) -> Optional[pulumi.Input[builtins.bool]]:
415
416
  """
416
417
  Enables/disables detailed monitoring of the EC2 instances.
417
418
 
@@ -424,19 +425,19 @@ class NodeGroupArgs:
424
425
  return pulumi.get(self, "enable_detailed_monitoring")
425
426
 
426
427
  @enable_detailed_monitoring.setter
427
- def enable_detailed_monitoring(self, value: Optional[pulumi.Input[bool]]):
428
+ def enable_detailed_monitoring(self, value: Optional[pulumi.Input[builtins.bool]]):
428
429
  pulumi.set(self, "enable_detailed_monitoring", value)
429
430
 
430
431
  @property
431
432
  @pulumi.getter(name="encryptRootBlockDevice")
432
- def encrypt_root_block_device(self) -> Optional[pulumi.Input[bool]]:
433
+ def encrypt_root_block_device(self) -> Optional[pulumi.Input[builtins.bool]]:
433
434
  """
434
435
  Encrypt the root block device of the nodes in the node group.
435
436
  """
436
437
  return pulumi.get(self, "encrypt_root_block_device")
437
438
 
438
439
  @encrypt_root_block_device.setter
439
- def encrypt_root_block_device(self, value: Optional[pulumi.Input[bool]]):
440
+ def encrypt_root_block_device(self, value: Optional[pulumi.Input[builtins.bool]]):
440
441
  pulumi.set(self, "encrypt_root_block_device", value)
441
442
 
442
443
  @property
@@ -455,7 +456,7 @@ class NodeGroupArgs:
455
456
 
456
457
  @property
457
458
  @pulumi.getter
458
- def gpu(self) -> Optional[pulumi.Input[bool]]:
459
+ def gpu(self) -> Optional[pulumi.Input[builtins.bool]]:
459
460
  """
460
461
  Use the latest recommended EKS Optimized Linux AMI with GPU support for the worker nodes from the AWS Systems Manager Parameter Store.
461
462
 
@@ -470,7 +471,7 @@ class NodeGroupArgs:
470
471
  return pulumi.get(self, "gpu")
471
472
 
472
473
  @gpu.setter
473
- def gpu(self, value: Optional[pulumi.Input[bool]]):
474
+ def gpu(self, value: Optional[pulumi.Input[builtins.bool]]):
474
475
  pulumi.set(self, "gpu", value)
475
476
 
476
477
  @property
@@ -487,103 +488,103 @@ class NodeGroupArgs:
487
488
 
488
489
  @property
489
490
  @pulumi.getter(name="instanceProfileName")
490
- def instance_profile_name(self) -> Optional[pulumi.Input[str]]:
491
+ def instance_profile_name(self) -> Optional[pulumi.Input[builtins.str]]:
491
492
  """
492
493
  The name of the IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
493
494
  """
494
495
  return pulumi.get(self, "instance_profile_name")
495
496
 
496
497
  @instance_profile_name.setter
497
- def instance_profile_name(self, value: Optional[pulumi.Input[str]]):
498
+ def instance_profile_name(self, value: Optional[pulumi.Input[builtins.str]]):
498
499
  pulumi.set(self, "instance_profile_name", value)
499
500
 
500
501
  @property
501
502
  @pulumi.getter(name="instanceType")
502
- def instance_type(self) -> Optional[pulumi.Input[str]]:
503
+ def instance_type(self) -> Optional[pulumi.Input[builtins.str]]:
503
504
  """
504
505
  The instance type to use for the cluster's nodes. Defaults to "t3.medium".
505
506
  """
506
507
  return pulumi.get(self, "instance_type")
507
508
 
508
509
  @instance_type.setter
509
- def instance_type(self, value: Optional[pulumi.Input[str]]):
510
+ def instance_type(self, value: Optional[pulumi.Input[builtins.str]]):
510
511
  pulumi.set(self, "instance_type", value)
511
512
 
512
513
  @property
513
514
  @pulumi.getter(name="keyName")
514
- def key_name(self) -> Optional[pulumi.Input[str]]:
515
+ def key_name(self) -> Optional[pulumi.Input[builtins.str]]:
515
516
  """
516
517
  Name of the key pair to use for SSH access to worker nodes.
517
518
  """
518
519
  return pulumi.get(self, "key_name")
519
520
 
520
521
  @key_name.setter
521
- def key_name(self, value: Optional[pulumi.Input[str]]):
522
+ def key_name(self, value: Optional[pulumi.Input[builtins.str]]):
522
523
  pulumi.set(self, "key_name", value)
523
524
 
524
525
  @property
525
526
  @pulumi.getter(name="kubeletExtraArgs")
526
- def kubelet_extra_args(self) -> Optional[pulumi.Input[str]]:
527
+ def kubelet_extra_args(self) -> Optional[pulumi.Input[builtins.str]]:
527
528
  """
528
529
  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`.
529
530
  """
530
531
  return pulumi.get(self, "kubelet_extra_args")
531
532
 
532
533
  @kubelet_extra_args.setter
533
- def kubelet_extra_args(self, value: Optional[pulumi.Input[str]]):
534
+ def kubelet_extra_args(self, value: Optional[pulumi.Input[builtins.str]]):
534
535
  pulumi.set(self, "kubelet_extra_args", value)
535
536
 
536
537
  @property
537
538
  @pulumi.getter
538
- def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]:
539
+ def labels(self) -> Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]:
539
540
  """
540
541
  Custom k8s node labels to be attached to each worker node. Adds the given key/value pairs to the `--node-labels` kubelet argument.
541
542
  """
542
543
  return pulumi.get(self, "labels")
543
544
 
544
545
  @labels.setter
545
- def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]]):
546
+ def labels(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]]):
546
547
  pulumi.set(self, "labels", value)
547
548
 
548
549
  @property
549
550
  @pulumi.getter(name="maxSize")
550
- def max_size(self) -> Optional[pulumi.Input[int]]:
551
+ def max_size(self) -> Optional[pulumi.Input[builtins.int]]:
551
552
  """
552
553
  The maximum number of worker nodes running in the cluster. Defaults to 2.
553
554
  """
554
555
  return pulumi.get(self, "max_size")
555
556
 
556
557
  @max_size.setter
557
- def max_size(self, value: Optional[pulumi.Input[int]]):
558
+ def max_size(self, value: Optional[pulumi.Input[builtins.int]]):
558
559
  pulumi.set(self, "max_size", value)
559
560
 
560
561
  @property
561
562
  @pulumi.getter(name="minSize")
562
- def min_size(self) -> Optional[pulumi.Input[int]]:
563
+ def min_size(self) -> Optional[pulumi.Input[builtins.int]]:
563
564
  """
564
565
  The minimum number of worker nodes running in the cluster. Defaults to 1.
565
566
  """
566
567
  return pulumi.get(self, "min_size")
567
568
 
568
569
  @min_size.setter
569
- def min_size(self, value: Optional[pulumi.Input[int]]):
570
+ def min_size(self, value: Optional[pulumi.Input[builtins.int]]):
570
571
  pulumi.set(self, "min_size", value)
571
572
 
572
573
  @property
573
574
  @pulumi.getter(name="nodeAssociatePublicIpAddress")
574
- def node_associate_public_ip_address(self) -> Optional[pulumi.Input[bool]]:
575
+ def node_associate_public_ip_address(self) -> Optional[pulumi.Input[builtins.bool]]:
575
576
  """
576
577
  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.
577
578
  """
578
579
  return pulumi.get(self, "node_associate_public_ip_address")
579
580
 
580
581
  @node_associate_public_ip_address.setter
581
- def node_associate_public_ip_address(self, value: Optional[pulumi.Input[bool]]):
582
+ def node_associate_public_ip_address(self, value: Optional[pulumi.Input[builtins.bool]]):
582
583
  pulumi.set(self, "node_associate_public_ip_address", value)
583
584
 
584
585
  @property
585
586
  @pulumi.getter(name="nodePublicKey")
586
- def node_public_key(self) -> Optional[pulumi.Input[str]]:
587
+ def node_public_key(self) -> Optional[pulumi.Input[builtins.str]]:
587
588
  """
588
589
  Public key material for SSH access to worker nodes. See allowed formats at:
589
590
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
@@ -592,79 +593,79 @@ class NodeGroupArgs:
592
593
  return pulumi.get(self, "node_public_key")
593
594
 
594
595
  @node_public_key.setter
595
- def node_public_key(self, value: Optional[pulumi.Input[str]]):
596
+ def node_public_key(self, value: Optional[pulumi.Input[builtins.str]]):
596
597
  pulumi.set(self, "node_public_key", value)
597
598
 
598
599
  @property
599
600
  @pulumi.getter(name="nodeRootVolumeDeleteOnTermination")
600
- def node_root_volume_delete_on_termination(self) -> Optional[pulumi.Input[bool]]:
601
+ def node_root_volume_delete_on_termination(self) -> Optional[pulumi.Input[builtins.bool]]:
601
602
  """
602
603
  Whether the root block device should be deleted on termination of the instance. Defaults to true.
603
604
  """
604
605
  return pulumi.get(self, "node_root_volume_delete_on_termination")
605
606
 
606
607
  @node_root_volume_delete_on_termination.setter
607
- def node_root_volume_delete_on_termination(self, value: Optional[pulumi.Input[bool]]):
608
+ def node_root_volume_delete_on_termination(self, value: Optional[pulumi.Input[builtins.bool]]):
608
609
  pulumi.set(self, "node_root_volume_delete_on_termination", value)
609
610
 
610
611
  @property
611
612
  @pulumi.getter(name="nodeRootVolumeEncrypted")
612
- def node_root_volume_encrypted(self) -> Optional[pulumi.Input[bool]]:
613
+ def node_root_volume_encrypted(self) -> Optional[pulumi.Input[builtins.bool]]:
613
614
  """
614
615
  Whether to encrypt a cluster node's root volume. Defaults to false.
615
616
  """
616
617
  return pulumi.get(self, "node_root_volume_encrypted")
617
618
 
618
619
  @node_root_volume_encrypted.setter
619
- def node_root_volume_encrypted(self, value: Optional[pulumi.Input[bool]]):
620
+ def node_root_volume_encrypted(self, value: Optional[pulumi.Input[builtins.bool]]):
620
621
  pulumi.set(self, "node_root_volume_encrypted", value)
621
622
 
622
623
  @property
623
624
  @pulumi.getter(name="nodeRootVolumeIops")
624
- def node_root_volume_iops(self) -> Optional[pulumi.Input[int]]:
625
+ def node_root_volume_iops(self) -> Optional[pulumi.Input[builtins.int]]:
625
626
  """
626
627
  The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
627
628
  """
628
629
  return pulumi.get(self, "node_root_volume_iops")
629
630
 
630
631
  @node_root_volume_iops.setter
631
- def node_root_volume_iops(self, value: Optional[pulumi.Input[int]]):
632
+ def node_root_volume_iops(self, value: Optional[pulumi.Input[builtins.int]]):
632
633
  pulumi.set(self, "node_root_volume_iops", value)
633
634
 
634
635
  @property
635
636
  @pulumi.getter(name="nodeRootVolumeSize")
636
- def node_root_volume_size(self) -> Optional[pulumi.Input[int]]:
637
+ def node_root_volume_size(self) -> Optional[pulumi.Input[builtins.int]]:
637
638
  """
638
639
  The size in GiB of a cluster node's root volume. Defaults to 20.
639
640
  """
640
641
  return pulumi.get(self, "node_root_volume_size")
641
642
 
642
643
  @node_root_volume_size.setter
643
- def node_root_volume_size(self, value: Optional[pulumi.Input[int]]):
644
+ def node_root_volume_size(self, value: Optional[pulumi.Input[builtins.int]]):
644
645
  pulumi.set(self, "node_root_volume_size", value)
645
646
 
646
647
  @property
647
648
  @pulumi.getter(name="nodeRootVolumeThroughput")
648
- def node_root_volume_throughput(self) -> Optional[pulumi.Input[int]]:
649
+ def node_root_volume_throughput(self) -> Optional[pulumi.Input[builtins.int]]:
649
650
  """
650
651
  Provisioned throughput performance in integer MiB/s for a cluster node's root volume. This is only valid with a volumeType of 'gp3'.
651
652
  """
652
653
  return pulumi.get(self, "node_root_volume_throughput")
653
654
 
654
655
  @node_root_volume_throughput.setter
655
- def node_root_volume_throughput(self, value: Optional[pulumi.Input[int]]):
656
+ def node_root_volume_throughput(self, value: Optional[pulumi.Input[builtins.int]]):
656
657
  pulumi.set(self, "node_root_volume_throughput", value)
657
658
 
658
659
  @property
659
660
  @pulumi.getter(name="nodeRootVolumeType")
660
- def node_root_volume_type(self) -> Optional[pulumi.Input[str]]:
661
+ def node_root_volume_type(self) -> Optional[pulumi.Input[builtins.str]]:
661
662
  """
662
663
  Configured EBS type for a cluster node's root volume. Default is 'gp2'. Supported values are 'standard', 'gp2', 'gp3', 'st1', 'sc1', 'io1'.
663
664
  """
664
665
  return pulumi.get(self, "node_root_volume_type")
665
666
 
666
667
  @node_root_volume_type.setter
667
- def node_root_volume_type(self, value: Optional[pulumi.Input[str]]):
668
+ def node_root_volume_type(self, value: Optional[pulumi.Input[builtins.str]]):
668
669
  pulumi.set(self, "node_root_volume_type", value)
669
670
 
670
671
  @property
@@ -688,7 +689,7 @@ class NodeGroupArgs:
688
689
 
689
690
  @property
690
691
  @pulumi.getter(name="nodeSecurityGroupId")
691
- def node_security_group_id(self) -> Optional[pulumi.Input[str]]:
692
+ def node_security_group_id(self) -> Optional[pulumi.Input[builtins.str]]:
692
693
  """
693
694
  The ID of the security group for the worker node group to communicate with the cluster.
694
695
 
@@ -702,12 +703,12 @@ class NodeGroupArgs:
702
703
  return pulumi.get(self, "node_security_group_id")
703
704
 
704
705
  @node_security_group_id.setter
705
- def node_security_group_id(self, value: Optional[pulumi.Input[str]]):
706
+ def node_security_group_id(self, value: Optional[pulumi.Input[builtins.str]]):
706
707
  pulumi.set(self, "node_security_group_id", value)
707
708
 
708
709
  @property
709
710
  @pulumi.getter(name="nodeSubnetIds")
710
- def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]:
711
+ def node_subnet_ids(self) -> Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]:
711
712
  """
712
713
  The set of subnets to override and use for the worker node group.
713
714
 
@@ -716,24 +717,24 @@ class NodeGroupArgs:
716
717
  return pulumi.get(self, "node_subnet_ids")
717
718
 
718
719
  @node_subnet_ids.setter
719
- def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]]):
720
+ def node_subnet_ids(self, value: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]]):
720
721
  pulumi.set(self, "node_subnet_ids", value)
721
722
 
722
723
  @property
723
724
  @pulumi.getter(name="nodeUserData")
724
- def node_user_data(self) -> Optional[pulumi.Input[str]]:
725
+ def node_user_data(self) -> Optional[pulumi.Input[builtins.str]]:
725
726
  """
726
727
  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 `#!`).
727
728
  """
728
729
  return pulumi.get(self, "node_user_data")
729
730
 
730
731
  @node_user_data.setter
731
- def node_user_data(self, value: Optional[pulumi.Input[str]]):
732
+ def node_user_data(self, value: Optional[pulumi.Input[builtins.str]]):
732
733
  pulumi.set(self, "node_user_data", value)
733
734
 
734
735
  @property
735
736
  @pulumi.getter(name="nodeUserDataOverride")
736
- def node_user_data_override(self) -> Optional[pulumi.Input[str]]:
737
+ def node_user_data_override(self) -> Optional[pulumi.Input[builtins.str]]:
737
738
  """
738
739
  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).
739
740
 
@@ -742,7 +743,7 @@ class NodeGroupArgs:
742
743
  return pulumi.get(self, "node_user_data_override")
743
744
 
744
745
  @node_user_data_override.setter
745
- def node_user_data_override(self, value: Optional[pulumi.Input[str]]):
746
+ def node_user_data_override(self, value: Optional[pulumi.Input[builtins.str]]):
746
747
  pulumi.set(self, "node_user_data_override", value)
747
748
 
748
749
  @property
@@ -784,14 +785,14 @@ class NodeGroupArgs:
784
785
 
785
786
  @property
786
787
  @pulumi.getter(name="spotPrice")
787
- def spot_price(self) -> Optional[pulumi.Input[str]]:
788
+ def spot_price(self) -> Optional[pulumi.Input[builtins.str]]:
788
789
  """
789
790
  Bidding price for spot instance. If set, only spot instances will be added as worker node.
790
791
  """
791
792
  return pulumi.get(self, "spot_price")
792
793
 
793
794
  @spot_price.setter
794
- def spot_price(self, value: Optional[pulumi.Input[str]]):
795
+ def spot_price(self, value: Optional[pulumi.Input[builtins.str]]):
795
796
  pulumi.set(self, "spot_price", value)
796
797
 
797
798
  @property
@@ -808,20 +809,21 @@ class NodeGroupArgs:
808
809
 
809
810
  @property
810
811
  @pulumi.getter
811
- def version(self) -> Optional[pulumi.Input[str]]:
812
+ def version(self) -> Optional[pulumi.Input[builtins.str]]:
812
813
  """
813
814
  Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
814
815
  """
815
816
  return pulumi.get(self, "version")
816
817
 
817
818
  @version.setter
818
- def version(self, value: Optional[pulumi.Input[str]]):
819
+ def version(self, value: Optional[pulumi.Input[builtins.str]]):
819
820
  pulumi.set(self, "version", value)
820
821
 
821
822
 
822
823
  warnings.warn("""NodeGroup uses AWS EC2 LaunchConfiguration which has been deprecated by AWS and doesn't support the newest instance types. Please use NodeGroupV2 instead.""", DeprecationWarning)
823
824
 
824
825
 
826
+ @pulumi.type_token("eks:index:NodeGroup")
825
827
  class NodeGroup(pulumi.ComponentResource):
826
828
  warnings.warn("""NodeGroup uses AWS EC2 LaunchConfiguration which has been deprecated by AWS and doesn't support the newest instance types. Please use NodeGroupV2 instead.""", DeprecationWarning)
827
829
 
@@ -829,53 +831,53 @@ class NodeGroup(pulumi.ComponentResource):
829
831
  def __init__(__self__,
830
832
  resource_name: str,
831
833
  opts: Optional[pulumi.ResourceOptions] = None,
832
- ami_id: Optional[pulumi.Input[str]] = None,
833
- ami_type: Optional[pulumi.Input[str]] = None,
834
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
835
- bootstrap_extra_args: Optional[pulumi.Input[str]] = None,
834
+ ami_id: Optional[pulumi.Input[builtins.str]] = None,
835
+ ami_type: Optional[pulumi.Input[builtins.str]] = None,
836
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
837
+ bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
836
838
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
837
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
839
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
838
840
  cluster: Optional[pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]]] = None,
839
841
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
840
- cluster_ingress_rule_id: Optional[pulumi.Input[str]] = None,
841
- desired_capacity: Optional[pulumi.Input[int]] = None,
842
- enable_detailed_monitoring: Optional[pulumi.Input[bool]] = None,
843
- encrypt_root_block_device: Optional[pulumi.Input[bool]] = None,
842
+ cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
843
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
844
+ enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
845
+ encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
844
846
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
845
- gpu: Optional[pulumi.Input[bool]] = None,
847
+ gpu: Optional[pulumi.Input[builtins.bool]] = None,
846
848
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
847
- instance_profile_name: Optional[pulumi.Input[str]] = None,
848
- instance_type: Optional[pulumi.Input[str]] = None,
849
- key_name: Optional[pulumi.Input[str]] = None,
850
- kubelet_extra_args: Optional[pulumi.Input[str]] = None,
851
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
852
- max_size: Optional[pulumi.Input[int]] = None,
853
- min_size: Optional[pulumi.Input[int]] = None,
854
- node_associate_public_ip_address: Optional[pulumi.Input[bool]] = None,
855
- node_public_key: Optional[pulumi.Input[str]] = None,
856
- node_root_volume_delete_on_termination: Optional[pulumi.Input[bool]] = None,
857
- node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
858
- node_root_volume_iops: Optional[pulumi.Input[int]] = None,
859
- node_root_volume_size: Optional[pulumi.Input[int]] = None,
860
- node_root_volume_throughput: Optional[pulumi.Input[int]] = None,
861
- node_root_volume_type: Optional[pulumi.Input[str]] = None,
849
+ instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
850
+ instance_type: Optional[pulumi.Input[builtins.str]] = None,
851
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
852
+ kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
853
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
854
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
855
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
856
+ node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
857
+ node_public_key: Optional[pulumi.Input[builtins.str]] = None,
858
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
859
+ node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
860
+ node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
861
+ node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
862
+ node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
863
+ node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
862
864
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
863
- node_security_group_id: Optional[pulumi.Input[str]] = None,
864
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
865
- node_user_data: Optional[pulumi.Input[str]] = None,
866
- node_user_data_override: Optional[pulumi.Input[str]] = None,
865
+ node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
866
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
867
+ node_user_data: Optional[pulumi.Input[builtins.str]] = None,
868
+ node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
867
869
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]]] = None,
868
870
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
869
- spot_price: Optional[pulumi.Input[str]] = None,
871
+ spot_price: Optional[pulumi.Input[builtins.str]] = None,
870
872
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]]] = None,
871
- version: Optional[pulumi.Input[str]] = None,
873
+ version: Optional[pulumi.Input[builtins.str]] = None,
872
874
  __props__=None):
873
875
  """
874
876
  NodeGroup is a component that wraps the AWS EC2 instances that provide compute capacity for an EKS cluster.
875
877
 
876
878
  :param str resource_name: The name of the resource.
877
879
  :param pulumi.ResourceOptions opts: Options for the resource.
878
- :param pulumi.Input[str] ami_id: The AMI ID to use for the worker nodes.
880
+ :param pulumi.Input[builtins.str] ami_id: The AMI ID to use for the worker nodes.
879
881
 
880
882
  Defaults to the latest recommended EKS Optimized Linux AMI from the AWS Systems Manager Parameter Store.
881
883
 
@@ -883,17 +885,17 @@ class NodeGroup(pulumi.ComponentResource):
883
885
 
884
886
  See for more details:
885
887
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html.
886
- :param pulumi.Input[str] ami_type: The AMI Type to use for the worker nodes.
888
+ :param pulumi.Input[builtins.str] ami_type: The AMI Type to use for the worker nodes.
887
889
 
888
890
  Only applicable when setting an AMI ID that is of type `arm64`.
889
891
 
890
892
  Note: `amiType` and `gpu` are mutually exclusive.
891
- :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.
893
+ :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.
892
894
 
893
895
  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
894
896
 
895
897
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
896
- :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.
898
+ :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.
897
899
  :param pulumi.Input[Mapping[str, Any]] bottlerocket_settings: The configuration settings for Bottlerocket OS.
898
900
  The settings will get merged with the base settings the provider uses to configure Bottlerocket.
899
901
 
@@ -904,25 +906,25 @@ class NodeGroup(pulumi.ComponentResource):
904
906
  - settings.kubernetes.cluster-dns-ip
905
907
 
906
908
  For an overview of the available settings, see https://bottlerocket.dev/en/os/1.20.x/api/settings/.
907
- :param pulumi.Input[Mapping[str, pulumi.Input[str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
909
+ :param pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]] cloud_formation_tags: The tags to apply to the CloudFormation Stack of the Worker NodeGroup.
908
910
 
909
911
  Note: Given the inheritance of auto-generated CF tags and `cloudFormationTags`, you should either supply the tag in `autoScalingGroupTags` or `cloudFormationTags`, but not both.
910
912
  :param pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]] cluster: The target EKS cluster.
911
913
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroupRule'] cluster_ingress_rule: The ingress rule that gives node group access.
912
- :param pulumi.Input[str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
913
- :param pulumi.Input[int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
914
- :param pulumi.Input[bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
914
+ :param pulumi.Input[builtins.str] cluster_ingress_rule_id: The ID of the ingress rule that gives node group access.
915
+ :param pulumi.Input[builtins.int] desired_capacity: The number of worker nodes that should be running in the cluster. Defaults to 2.
916
+ :param pulumi.Input[builtins.bool] enable_detailed_monitoring: Enables/disables detailed monitoring of the EC2 instances.
915
917
 
916
918
  With detailed monitoring, all metrics, including status check metrics, are available in 1-minute intervals.
917
919
  When enabled, you can also get aggregated data across groups of similar instances.
918
920
 
919
921
  Note: You are charged per metric that is sent to CloudWatch. You are not charged for data storage.
920
922
  For more information, see "Paid tier" and "Example 1 - EC2 Detailed Monitoring" here https://aws.amazon.com/cloudwatch/pricing/.
921
- :param pulumi.Input[bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
923
+ :param pulumi.Input[builtins.bool] encrypt_root_block_device: Encrypt the root block device of the nodes in the node group.
922
924
  :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.
923
925
 
924
926
  This additional set of security groups captures any user application rules that will be needed for the nodes.
925
- :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.
927
+ :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.
926
928
 
927
929
  Defaults to false.
928
930
 
@@ -932,23 +934,23 @@ class NodeGroup(pulumi.ComponentResource):
932
934
  - https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html
933
935
  - https://docs.aws.amazon.com/eks/latest/userguide/retrieve-ami-id.html
934
936
  :param 'pulumi_aws.iam.InstanceProfile' instance_profile: The IAM InstanceProfile to use on the NodeGroup. Properties instanceProfile and instanceProfileName are mutually exclusive.
935
- :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.
936
- :param pulumi.Input[str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
937
- :param pulumi.Input[str] key_name: Name of the key pair to use for SSH access to worker nodes.
938
- :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`.
939
- :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.
940
- :param pulumi.Input[int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
941
- :param pulumi.Input[int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
942
- :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.
943
- :param pulumi.Input[str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
937
+ :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.
938
+ :param pulumi.Input[builtins.str] instance_type: The instance type to use for the cluster's nodes. Defaults to "t3.medium".
939
+ :param pulumi.Input[builtins.str] key_name: Name of the key pair to use for SSH access to worker nodes.
940
+ :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`.
941
+ :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.
942
+ :param pulumi.Input[builtins.int] max_size: The maximum number of worker nodes running in the cluster. Defaults to 2.
943
+ :param pulumi.Input[builtins.int] min_size: The minimum number of worker nodes running in the cluster. Defaults to 1.
944
+ :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.
945
+ :param pulumi.Input[builtins.str] node_public_key: Public key material for SSH access to worker nodes. See allowed formats at:
944
946
  https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html
945
947
  If not provided, no SSH access is enabled on VMs.
946
- :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.
947
- :param pulumi.Input[bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
948
- :param pulumi.Input[int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
949
- :param pulumi.Input[int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
950
- :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'.
951
- :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'.
948
+ :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.
949
+ :param pulumi.Input[builtins.bool] node_root_volume_encrypted: Whether to encrypt a cluster node's root volume. Defaults to false.
950
+ :param pulumi.Input[builtins.int] node_root_volume_iops: The amount of provisioned IOPS. This is only valid with a volumeType of 'io1'.
951
+ :param pulumi.Input[builtins.int] node_root_volume_size: The size in GiB of a cluster node's root volume. Defaults to 20.
952
+ :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'.
953
+ :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'.
952
954
  :param pulumi.Input['pulumi_aws.ec2.SecurityGroup'] node_security_group: The security group for the worker node group to communicate with the cluster.
953
955
 
954
956
  This security group requires specific inbound and outbound rules.
@@ -957,7 +959,7 @@ class NodeGroup(pulumi.ComponentResource):
957
959
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
958
960
 
959
961
  Note: The `nodeSecurityGroup` option and the cluster option`nodeSecurityGroupTags` are mutually exclusive.
960
- :param pulumi.Input[str] node_security_group_id: The ID of the security group for the worker node group to communicate with the cluster.
962
+ :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.
961
963
 
962
964
  This security group requires specific inbound and outbound rules.
963
965
 
@@ -965,11 +967,11 @@ class NodeGroup(pulumi.ComponentResource):
965
967
  https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html
966
968
 
967
969
  Note: The `nodeSecurityGroupId` option and the cluster option `nodeSecurityGroupTags` are mutually exclusive.
968
- :param pulumi.Input[Sequence[pulumi.Input[str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
970
+ :param pulumi.Input[Sequence[pulumi.Input[builtins.str]]] node_subnet_ids: The set of subnets to override and use for the worker node group.
969
971
 
970
972
  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.
971
- :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 `#!`).
972
- :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).
973
+ :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 `#!`).
974
+ :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).
973
975
 
974
976
  See for more details: https://docs.aws.amazon.com/eks/latest/userguide/worker.html
975
977
  :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.
@@ -987,9 +989,9 @@ class NodeGroup(pulumi.ComponentResource):
987
989
  Valid values are `RECOMMENDED`, `AL2`, `AL2023` and `Bottlerocket`.
988
990
 
989
991
  Defaults to the current recommended OS.
990
- :param pulumi.Input[str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
992
+ :param pulumi.Input[builtins.str] spot_price: Bidding price for spot instance. If set, only spot instances will be added as worker node.
991
993
  :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
992
- :param pulumi.Input[str] version: Desired Kubernetes master / control plane version. If you do not specify a value, the latest available version is used.
994
+ :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.
993
995
  """
994
996
  ...
995
997
  @overload
@@ -1015,46 +1017,46 @@ class NodeGroup(pulumi.ComponentResource):
1015
1017
  def _internal_init(__self__,
1016
1018
  resource_name: str,
1017
1019
  opts: Optional[pulumi.ResourceOptions] = None,
1018
- ami_id: Optional[pulumi.Input[str]] = None,
1019
- ami_type: Optional[pulumi.Input[str]] = None,
1020
- auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1021
- bootstrap_extra_args: Optional[pulumi.Input[str]] = None,
1020
+ ami_id: Optional[pulumi.Input[builtins.str]] = None,
1021
+ ami_type: Optional[pulumi.Input[builtins.str]] = None,
1022
+ auto_scaling_group_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1023
+ bootstrap_extra_args: Optional[pulumi.Input[builtins.str]] = None,
1022
1024
  bottlerocket_settings: Optional[pulumi.Input[Mapping[str, Any]]] = None,
1023
- cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1025
+ cloud_formation_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1024
1026
  cluster: Optional[pulumi.Input[Union['Cluster', Union['CoreDataArgs', 'CoreDataArgsDict']]]] = None,
1025
1027
  cluster_ingress_rule: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroupRule']] = None,
1026
- cluster_ingress_rule_id: Optional[pulumi.Input[str]] = None,
1027
- desired_capacity: Optional[pulumi.Input[int]] = None,
1028
- enable_detailed_monitoring: Optional[pulumi.Input[bool]] = None,
1029
- encrypt_root_block_device: Optional[pulumi.Input[bool]] = None,
1028
+ cluster_ingress_rule_id: Optional[pulumi.Input[builtins.str]] = None,
1029
+ desired_capacity: Optional[pulumi.Input[builtins.int]] = None,
1030
+ enable_detailed_monitoring: Optional[pulumi.Input[builtins.bool]] = None,
1031
+ encrypt_root_block_device: Optional[pulumi.Input[builtins.bool]] = None,
1030
1032
  extra_node_security_groups: Optional[pulumi.Input[Sequence[pulumi.Input['pulumi_aws.ec2.SecurityGroup']]]] = None,
1031
- gpu: Optional[pulumi.Input[bool]] = None,
1033
+ gpu: Optional[pulumi.Input[builtins.bool]] = None,
1032
1034
  instance_profile: Optional['pulumi_aws.iam.InstanceProfile'] = None,
1033
- instance_profile_name: Optional[pulumi.Input[str]] = None,
1034
- instance_type: Optional[pulumi.Input[str]] = None,
1035
- key_name: Optional[pulumi.Input[str]] = None,
1036
- kubelet_extra_args: Optional[pulumi.Input[str]] = None,
1037
- labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[str]]]] = None,
1038
- max_size: Optional[pulumi.Input[int]] = None,
1039
- min_size: Optional[pulumi.Input[int]] = None,
1040
- node_associate_public_ip_address: Optional[pulumi.Input[bool]] = None,
1041
- node_public_key: Optional[pulumi.Input[str]] = None,
1042
- node_root_volume_delete_on_termination: Optional[pulumi.Input[bool]] = None,
1043
- node_root_volume_encrypted: Optional[pulumi.Input[bool]] = None,
1044
- node_root_volume_iops: Optional[pulumi.Input[int]] = None,
1045
- node_root_volume_size: Optional[pulumi.Input[int]] = None,
1046
- node_root_volume_throughput: Optional[pulumi.Input[int]] = None,
1047
- node_root_volume_type: Optional[pulumi.Input[str]] = None,
1035
+ instance_profile_name: Optional[pulumi.Input[builtins.str]] = None,
1036
+ instance_type: Optional[pulumi.Input[builtins.str]] = None,
1037
+ key_name: Optional[pulumi.Input[builtins.str]] = None,
1038
+ kubelet_extra_args: Optional[pulumi.Input[builtins.str]] = None,
1039
+ labels: Optional[pulumi.Input[Mapping[str, pulumi.Input[builtins.str]]]] = None,
1040
+ max_size: Optional[pulumi.Input[builtins.int]] = None,
1041
+ min_size: Optional[pulumi.Input[builtins.int]] = None,
1042
+ node_associate_public_ip_address: Optional[pulumi.Input[builtins.bool]] = None,
1043
+ node_public_key: Optional[pulumi.Input[builtins.str]] = None,
1044
+ node_root_volume_delete_on_termination: Optional[pulumi.Input[builtins.bool]] = None,
1045
+ node_root_volume_encrypted: Optional[pulumi.Input[builtins.bool]] = None,
1046
+ node_root_volume_iops: Optional[pulumi.Input[builtins.int]] = None,
1047
+ node_root_volume_size: Optional[pulumi.Input[builtins.int]] = None,
1048
+ node_root_volume_throughput: Optional[pulumi.Input[builtins.int]] = None,
1049
+ node_root_volume_type: Optional[pulumi.Input[builtins.str]] = None,
1048
1050
  node_security_group: Optional[pulumi.Input['pulumi_aws.ec2.SecurityGroup']] = None,
1049
- node_security_group_id: Optional[pulumi.Input[str]] = None,
1050
- node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[str]]]] = None,
1051
- node_user_data: Optional[pulumi.Input[str]] = None,
1052
- node_user_data_override: Optional[pulumi.Input[str]] = None,
1051
+ node_security_group_id: Optional[pulumi.Input[builtins.str]] = None,
1052
+ node_subnet_ids: Optional[pulumi.Input[Sequence[pulumi.Input[builtins.str]]]] = None,
1053
+ node_user_data: Optional[pulumi.Input[builtins.str]] = None,
1054
+ node_user_data_override: Optional[pulumi.Input[builtins.str]] = None,
1053
1055
  nodeadm_extra_options: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeadmOptionsArgs', 'NodeadmOptionsArgsDict']]]]] = None,
1054
1056
  operating_system: Optional[pulumi.Input['OperatingSystem']] = None,
1055
- spot_price: Optional[pulumi.Input[str]] = None,
1057
+ spot_price: Optional[pulumi.Input[builtins.str]] = None,
1056
1058
  taints: Optional[pulumi.Input[Mapping[str, pulumi.Input[Union['TaintArgs', 'TaintArgsDict']]]]] = None,
1057
- version: Optional[pulumi.Input[str]] = None,
1059
+ version: Optional[pulumi.Input[builtins.str]] = None,
1058
1060
  __props__=None):
1059
1061
  pulumi.log.warn("""NodeGroup is deprecated: NodeGroup uses AWS EC2 LaunchConfiguration which has been deprecated by AWS and doesn't support the newest instance types. Please use NodeGroupV2 instead.""")
1060
1062
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -1120,7 +1122,7 @@ class NodeGroup(pulumi.ComponentResource):
1120
1122
 
1121
1123
  @property
1122
1124
  @pulumi.getter(name="autoScalingGroupName")
1123
- def auto_scaling_group_name(self) -> pulumi.Output[str]:
1125
+ def auto_scaling_group_name(self) -> pulumi.Output[builtins.str]:
1124
1126
  """
1125
1127
  The AutoScalingGroup name for the Node group.
1126
1128
  """
@@ -1152,7 +1154,7 @@ class NodeGroup(pulumi.ComponentResource):
1152
1154
 
1153
1155
  @property
1154
1156
  @pulumi.getter(name="nodeSecurityGroupId")
1155
- def node_security_group_id(self) -> pulumi.Output[str]:
1157
+ def node_security_group_id(self) -> pulumi.Output[builtins.str]:
1156
1158
  """
1157
1159
  The ID of the security group for the node group to communicate with the cluster.
1158
1160
  """