Skip to content

Commit

Permalink
Merge pull request #67 from isovalent/pr/ayuspin/al2023-support
Browse files Browse the repository at this point in the history
add cloudinit_post_nodeadm (for Amazon Linux 2023 (AL2023))
  • Loading branch information
darox authored Jan 27, 2025
2 parents 80f8512 + 14b9d47 commit 0c86cdd
Show file tree
Hide file tree
Showing 3 changed files with 18 additions and 11 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ An opinionated Terraform module that can be used to create and manage an EKS clu
| <a name="input_phlare_bucket_name"></a> [phlare\_bucket\_name](#input\_phlare\_bucket\_name) | The name of the S3 bucket that will be used by Phlare | `string` | `""` | no |
| <a name="input_phlare_oidc_fully_qualified_subjects"></a> [phlare\_oidc\_fully\_qualified\_subjects](#input\_phlare\_oidc\_fully\_qualified\_subjects) | The list of trusted resources which can assume the 'phlare' role using OpenID Connect. | `list(string)` | `[]` | no |
| <a name="input_region"></a> [region](#input\_region) | The region in which to create the EKS cluster. | `string` | n/a | yes |
| <a name="input_self_managed_node_groups"></a> [self\_managed\_node\_groups](#input\_self\_managed\_node\_groups) | A map describing the set of self-managed node groups to create. Other types of node groups besides self-managed are currently not supported. | <pre>map(object({<br/> ami_type = string<br/> ami_name_filter = string<br/> extra_tags = map(string)<br/> instance_type = string<br/> kubelet_extra_args = string<br/> max_nodes = number<br/> min_nodes = number<br/> name = string<br/> pre_bootstrap_user_data = string<br/> post_bootstrap_user_data = string<br/> root_volume_id = string<br/> root_volume_size = number<br/> root_volume_type = string<br/> subnet_ids = list(string)<br/> iam_role_additional_policies = map(string)<br/> iam_role_use_name_prefix = optional(bool, true)<br/> key_name = optional(string)<br/> }))</pre> | n/a | yes |
| <a name="input_self_managed_node_groups"></a> [self\_managed\_node\_groups](#input\_self\_managed\_node\_groups) | A map describing the set of self-managed node groups to create. Other types of node groups besides self-managed are currently not supported. | <pre>map(object({<br/> ami_type = string<br/> ami_name_filter = string<br/> extra_tags = map(string)<br/> instance_type = string<br/> kubelet_extra_args = string<br/> max_nodes = number<br/> min_nodes = number<br/> name = string<br/> pre_bootstrap_user_data = string<br/> post_bootstrap_user_data = string<br/> cloudinit_post_nodeadm = optional(list(object({<br/> content = string<br/> content_type = optional(string)<br/> filename = optional(string)<br/> merge_type = optional(string)<br/> })))<br/> root_volume_id = string<br/> root_volume_size = number<br/> root_volume_type = string<br/> subnet_ids = list(string)<br/> iam_role_additional_policies = map(string)<br/> iam_role_use_name_prefix = optional(bool, true)<br/> key_name = optional(string)<br/> }))</pre> | n/a | yes |
| <a name="input_tags"></a> [tags](#input\_tags) | The set of tags to place on the EKS cluster. | `map(string)` | n/a | yes |
| <a name="input_velero_bucket_name"></a> [velero\_bucket\_name](#input\_velero\_bucket\_name) | The name of the S3 bucket that will be used to upload Velero backups. | `string` | `""` | no |
| <a name="input_velero_oidc_fully_qualified_subjects"></a> [velero\_oidc\_fully\_qualified\_subjects](#input\_velero\_oidc\_fully\_qualified\_subjects) | The list of trusted resources which can assume the 'velero' role using OpenID Connect. | `list(string)` | `[]` | no |
Expand Down
1 change: 1 addition & 0 deletions eks.tf
Original file line number Diff line number Diff line change
Expand Up @@ -129,6 +129,7 @@ module "main" {
instance_type = g.instance_type // The instance type to use for worker nodes.
pre_bootstrap_user_data = g.pre_bootstrap_user_data // The pre-bootstrap user data to use for worker nodes.
post_bootstrap_user_data = g.post_bootstrap_user_data // The pre-bootstrap user data to use for worker nodes.
cloudinit_post_nodeadm = g.cloudinit_post_nodeadm != null ? g.cloudinit_post_nodeadm : []
iam_role_additional_policies = g.iam_role_additional_policies
iam_role_use_name_prefix = g.iam_role_use_name_prefix
subnet_ids = length(g.subnet_ids) > 0 ? g.subnet_ids : data.aws_subnets.private.ids // Only place nodes in private subnets. This may change in the future.
Expand Down
26 changes: 16 additions & 10 deletions variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -136,16 +136,22 @@ variable "region" {
variable "self_managed_node_groups" {
description = "A map describing the set of self-managed node groups to create. Other types of node groups besides self-managed are currently not supported."
type = map(object({
ami_type = string
ami_name_filter = string
extra_tags = map(string)
instance_type = string
kubelet_extra_args = string
max_nodes = number
min_nodes = number
name = string
pre_bootstrap_user_data = string
post_bootstrap_user_data = string
ami_type = string
ami_name_filter = string
extra_tags = map(string)
instance_type = string
kubelet_extra_args = string
max_nodes = number
min_nodes = number
name = string
pre_bootstrap_user_data = string
post_bootstrap_user_data = string
cloudinit_post_nodeadm = optional(list(object({
content = string
content_type = optional(string)
filename = optional(string)
merge_type = optional(string)
})))
root_volume_id = string
root_volume_size = number
root_volume_type = string
Expand Down

0 comments on commit 0c86cdd

Please sign in to comment.