data "aws_region" "current" {} data "http" "workstation_external_ip" { url = "https://ipv4.icanhazip.com" } data "aws_iam_policy_document" "workers_assume_role_policy" { statement { sid = "EKSWorkerAssumeRole" actions = [ "sts:AssumeRole", ] principals { type = "Service" identifiers = ["ec2.amazonaws.com"] } } } data "aws_ami" "eks_worker" { filter { name = "name" values = ["eks-worker-*"] } most_recent = true owners = ["602401143452"] # Amazon } data "aws_iam_policy_document" "cluster_assume_role_policy" { statement { sid = "EKSClusterAssumeRole" actions = [ "sts:AssumeRole", ] principals { type = "Service" identifiers = ["eks.amazonaws.com"] } } } data "template_file" "kubeconfig" { template = "${file("${path.module}/templates/kubeconfig.tpl")}" vars { cluster_name = "${aws_eks_cluster.this.name}" kubeconfig_name = "${local.kubeconfig_name}" endpoint = "${aws_eks_cluster.this.endpoint}" region = "${data.aws_region.current.name}" cluster_auth_base64 = "${aws_eks_cluster.this.certificate_authority.0.data}" aws_authenticator_command = "${var.kubeconfig_aws_authenticator_command}" aws_authenticator_additional_args = "${length(var.kubeconfig_aws_authenticator_additional_args) > 0 ? " - ${join("\n - ", var.kubeconfig_aws_authenticator_additional_args)}" : "" }" aws_authenticator_env_variables = "${length(var.kubeconfig_aws_authenticator_env_variables) > 0 ? " env:\n${join("\n", data.template_file.aws_authenticator_env_variables.*.rendered)}" : ""}" } } data "template_file" "aws_authenticator_env_variables" { template = <