11locals {
22 external_dns_docker_image = " k8s.gcr.io/external-dns/external-dns:v${ var . external_dns_version } "
33 external_dns_version = var. external_dns_version
4+
5+ default_name = " aws-eks-istio-external-dns-${ lower (var. hosted_zone_id )} -${ random_string . suffix . result } "
6+
7+ iam_name = " eks-istio-external-dns-${ lower (var. hosted_zone_id )} -${ random_string . suffix . result } "
48}
59
10+ resource "random_string" "suffix" {
11+ length = 8
12+ special = false
13+ }
614
715resource "kubernetes_service_account" "this" {
816 automount_service_account_token = true
917 metadata {
10- name = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
18+ name = local . default_name
1119 namespace = var. k8s_namespace
1220 labels = {
13- " app.kubernetes.io/name" = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
21+ " app.kubernetes.io/name" = local.default_name
1422 " app.kubernetes.io/managed-by" = " terraform"
1523 }
1624 }
1725}
1826
1927resource "kubernetes_cluster_role" "this" {
2028 metadata {
21- name = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
29+ name = local . default_name
2230
2331 labels = {
24- " app.kubernetes.io/name" = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
32+ " app.kubernetes.io/name" = local.default_name
2533 " app.kubernetes.io/managed-by" = " terraform"
2634 }
2735 }
@@ -150,11 +158,11 @@ resource "kubernetes_deployment" "this" {
150158 depends_on = [kubernetes_cluster_role_binding . this ]
151159
152160 metadata {
153- name = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
161+ name = local . default_name
154162 namespace = var. k8s_namespace
155163
156164 labels = {
157- " app.kubernetes.io/name" = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
165+ " app.kubernetes.io/name" = local.default_name
158166 " app.kubernetes.io/version" = " v${ local . external_dns_version } "
159167 " app.kubernetes.io/managed-by" = " terraform"
160168 }
@@ -170,7 +178,7 @@ resource "kubernetes_deployment" "this" {
170178
171179 selector {
172180 match_labels = {
173- " app.kubernetes.io/name" = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
181+ " app.kubernetes.io/name" = local.default_name
174182 }
175183 }
176184
@@ -182,7 +190,7 @@ resource "kubernetes_deployment" "this" {
182190 metadata {
183191 labels = merge (
184192 {
185- " app.kubernetes.io/name" = " aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } "
193+ " app.kubernetes.io/name" = local.default_name
186194 " app.kubernetes.io/version" = local.external_dns_version
187195 },
188196 var. k8s_pod_labels
@@ -199,7 +207,7 @@ resource "kubernetes_deployment" "this" {
199207 match_expressions {
200208 key = " app.kubernetes.io/name"
201209 operator = " In"
202- values = [" aws-eks-istio-external-dns- ${ lower (var . hosted_zone_id ) } " ]
210+ values = [local . default_name ]
203211 }
204212 }
205213 topology_key = " kubernetes.io/hostname"
0 commit comments