mirror of
https://github.com/terraform-aws-modules/terraform-aws-eks.git
synced 2025-09-09 19:32:58 +08:00
416515a0da
* feat!: Upgrade min AWS provider and Terraform versions to `6.0` and `1.5.7` respectively * fix: Remove deprecated arguments in AWS v6.0 provider, upgrade Helm provider to v3.0, bump VPC module to v6.0 * fix: Remove `aws-auth` sub-module * fix: Remove `platform` and `cluster_service_ipv4_cidr` variables from `user-data` sub-module * fix: Resolve all marked `todos` that have been accumulated * fix: Set default `http_put_response_hop_limit` to `1` * fix: Remove IRSA support from Karpenter sub-module * fix: Avoid making GET requests from data sources unless absolutely necessary * feat: Add variable optional attribute definitions * feat: Bump KMS key module version to latest, add remaining variable attribute definitions * fix: Remove `cluster_` prefix from variable names to better match the underlying API * fix: Move all EFA logic to the nodegroup itself * fix: Remove arguments that do not make sense in EKS * fix: Updates from plan validation * fix: Remove more self-managed node group attributes that are commonly not used in EKS clusters * fix: Remove data plane compute `*_defaults` variables that do not work with variable optional attributes * fix: Ignore changes to `bootstrap_self_managed_addons` to aid in upgrade * feat: Add support for `region` argument on relevant resources * feat: Initial pass on upgrade guide * fix: Updates from testing and validating EKS managed node group * fix: Updates from testing and validating self-managed node group * docs: Ensure addon ussage documented is aligned * feat: Switch to dualstack OIDC issuer URL * feat: Allow sourcing over overriding the Karpenter assume role policy * fix: Use `Bool` instead of `StringEquals` for DenyHTTP queue policy * fix: Correct use of `nullable` and default value propagation
158 lines
5.4 KiB
Terraform
158 lines
5.4 KiB
Terraform
################################################################################
|
|
# Launch template
|
|
################################################################################
|
|
|
|
output "launch_template_id" {
|
|
description = "The ID of the launch template"
|
|
value = try(aws_launch_template.this[0].id, null)
|
|
}
|
|
|
|
output "launch_template_arn" {
|
|
description = "The ARN of the launch template"
|
|
value = try(aws_launch_template.this[0].arn, null)
|
|
}
|
|
|
|
output "launch_template_latest_version" {
|
|
description = "The latest version of the launch template"
|
|
value = try(aws_launch_template.this[0].latest_version, null)
|
|
}
|
|
|
|
output "launch_template_name" {
|
|
description = "The name of the launch template"
|
|
value = try(aws_launch_template.this[0].name, null)
|
|
}
|
|
|
|
################################################################################
|
|
# autoscaling group
|
|
################################################################################
|
|
|
|
output "autoscaling_group_arn" {
|
|
description = "The ARN for this autoscaling group"
|
|
value = try(aws_autoscaling_group.this[0].arn, null)
|
|
}
|
|
|
|
output "autoscaling_group_id" {
|
|
description = "The autoscaling group id"
|
|
value = try(aws_autoscaling_group.this[0].id, null)
|
|
}
|
|
|
|
output "autoscaling_group_name" {
|
|
description = "The autoscaling group name"
|
|
value = try(aws_autoscaling_group.this[0].name, null)
|
|
}
|
|
|
|
output "autoscaling_group_min_size" {
|
|
description = "The minimum size of the autoscaling group"
|
|
value = try(aws_autoscaling_group.this[0].min_size, null)
|
|
}
|
|
|
|
output "autoscaling_group_max_size" {
|
|
description = "The maximum size of the autoscaling group"
|
|
value = try(aws_autoscaling_group.this[0].max_size, null)
|
|
}
|
|
|
|
output "autoscaling_group_desired_capacity" {
|
|
description = "The number of Amazon EC2 instances that should be running in the group"
|
|
value = try(aws_autoscaling_group.this[0].desired_capacity, null)
|
|
}
|
|
|
|
output "autoscaling_group_default_cooldown" {
|
|
description = "Time between a scaling activity and the succeeding scaling activity"
|
|
value = try(aws_autoscaling_group.this[0].default_cooldown, null)
|
|
}
|
|
|
|
output "autoscaling_group_health_check_grace_period" {
|
|
description = "Time after instance comes into service before checking health"
|
|
value = try(aws_autoscaling_group.this[0].health_check_grace_period, null)
|
|
}
|
|
|
|
output "autoscaling_group_health_check_type" {
|
|
description = "EC2 or ELB. Controls how health checking is done"
|
|
value = try(aws_autoscaling_group.this[0].health_check_type, null)
|
|
}
|
|
|
|
output "autoscaling_group_availability_zones" {
|
|
description = "The availability zones of the autoscaling group"
|
|
value = try(aws_autoscaling_group.this[0].availability_zones, null)
|
|
}
|
|
|
|
output "autoscaling_group_vpc_zone_identifier" {
|
|
description = "The VPC zone identifier"
|
|
value = try(aws_autoscaling_group.this[0].vpc_zone_identifier, null)
|
|
}
|
|
|
|
################################################################################
|
|
# IAM Role
|
|
################################################################################
|
|
|
|
output "iam_role_name" {
|
|
description = "The name of the IAM role"
|
|
value = try(aws_iam_role.this[0].name, null)
|
|
}
|
|
|
|
output "iam_role_arn" {
|
|
description = "The Amazon Resource Name (ARN) specifying the IAM role"
|
|
value = try(aws_iam_role.this[0].arn, null)
|
|
}
|
|
|
|
output "iam_role_unique_id" {
|
|
description = "Stable and unique string identifying the IAM role"
|
|
value = try(aws_iam_role.this[0].unique_id, null)
|
|
}
|
|
|
|
################################################################################
|
|
# IAM Instance Profile
|
|
################################################################################
|
|
|
|
output "iam_instance_profile_arn" {
|
|
description = "ARN assigned by AWS to the instance profile"
|
|
value = try(aws_iam_instance_profile.this[0].arn, var.iam_instance_profile_arn)
|
|
}
|
|
|
|
output "iam_instance_profile_id" {
|
|
description = "Instance profile's ID"
|
|
value = try(aws_iam_instance_profile.this[0].id, null)
|
|
}
|
|
|
|
output "iam_instance_profile_unique" {
|
|
description = "Stable and unique string identifying the IAM instance profile"
|
|
value = try(aws_iam_instance_profile.this[0].unique_id, null)
|
|
}
|
|
|
|
################################################################################
|
|
# Access Entry
|
|
################################################################################
|
|
|
|
output "access_entry_arn" {
|
|
description = "Amazon Resource Name (ARN) of the Access Entry"
|
|
value = try(aws_eks_access_entry.this[0].access_entry_arn, null)
|
|
}
|
|
|
|
################################################################################
|
|
# Additional
|
|
################################################################################
|
|
|
|
output "image_id" {
|
|
description = "ID of the image"
|
|
value = try(aws_launch_template.this[0].image_id, null)
|
|
}
|
|
|
|
output "user_data" {
|
|
description = "Base64 encoded user data"
|
|
value = try(module.user_data.user_data, null)
|
|
}
|
|
|
|
################################################################################
|
|
# Security Group
|
|
################################################################################
|
|
|
|
output "security_group_arn" {
|
|
description = "Amazon Resource Name (ARN) of the security group"
|
|
value = try(aws_security_group.this[0].arn, null)
|
|
}
|
|
|
|
output "security_group_id" {
|
|
description = "ID of the security group"
|
|
value = try(aws_security_group.this[0].id, null)
|
|
}
|