Skip to content

Commit d6b893b

Browse files
authored
Merge pull request #8655 from ameukam/aws-kops-tags-boskos-janitor
AWS: add tags to kOps CI Cluster
2 parents 115aed3 + 4c54898 commit d6b893b

File tree

6 files changed

+58
-15
lines changed

6 files changed

+58
-15
lines changed

infra/aws/terraform/kops-infra-ci/eks.tf

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -169,6 +169,10 @@ resource "aws_eks_pod_identity_association" "kops_prow_build" {
169169
namespace = "test-pods"
170170
service_account = "prowjob-default-sa"
171171
role_arn = aws_iam_role.eks_pod_identity_role.arn
172+
173+
tags = merge(var.tags, var.janitor_tags, {
174+
"region" = data.aws_region.current.region
175+
})
172176
}
173177

174178

@@ -190,7 +194,9 @@ module "vpc_cni_irsa" {
190194
}
191195
}
192196

193-
tags = var.tags
197+
tags = merge(var.tags, var.janitor_tags, {
198+
"region" = data.aws_region.current.region
199+
})
194200
}
195201

196202
module "ebs_csi_irsa" {
@@ -208,7 +214,9 @@ module "ebs_csi_irsa" {
208214
}
209215
}
210216

211-
tags = var.tags
217+
tags = merge(var.tags, var.janitor_tags, {
218+
"region" = data.aws_region.current.region
219+
})
212220
}
213221

214222
module "cluster_autoscaler_irsa_role" {
@@ -227,5 +235,7 @@ module "cluster_autoscaler_irsa_role" {
227235
}
228236
}
229237

230-
tags = var.tags
238+
tags = merge(var.tags, var.janitor_tags, {
239+
"region" = data.aws_region.current.region
240+
})
231241
}

infra/aws/terraform/kops-infra-ci/iam.tf

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,10 @@ resource "aws_iam_role" "google_prow_trust_role" {
5252
description = ""
5353
max_session_duration = 43200
5454
assume_role_policy = data.aws_iam_policy_document.google_prow_trust_policy.json
55+
56+
tags = merge(var.tags, var.janitor_tags, {
57+
"region" = data.aws_region.current.region
58+
})
5559
}
5660

5761

@@ -79,6 +83,11 @@ resource "aws_iam_role" "eks_pod_identity_role" {
7983

8084
name = "EKSPodIdentityRole"
8185
assume_role_policy = data.aws_iam_policy_document.eks_pod_identity_policy.json
86+
87+
88+
tags = merge(var.tags, var.janitor_tags, {
89+
"region" = data.aws_region.current.region
90+
})
8291
}
8392

8493
resource "aws_iam_role_policy_attachment" "eks_pod_identity_policy" {
@@ -103,7 +112,9 @@ module "ci_iam_group" {
103112
"arn:aws:iam::aws:policy/AdministratorAccess",
104113
]
105114

106-
tags = var.tags
115+
tags = merge(var.tags, var.janitor_tags, {
116+
"region" = data.aws_region.current.region
117+
})
107118
}
108119

109120
module "kops_ci_user" {
@@ -118,5 +129,7 @@ module "kops_ci_user" {
118129
force_destroy = true
119130
password_reset_required = false
120131

121-
tags = var.tags
132+
tags = merge(var.tags, var.janitor_tags, {
133+
"region" = data.aws_region.current.region
134+
})
122135
}

infra/aws/terraform/kops-infra-ci/locals.tf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@ locals {
2929
"k8s.io/cluster-autoscaler/enabled" = true
3030
}
3131

32-
partition = cidrsubnets(aws_vpc_ipam_preview_next_cidr.main.cidr, 2, 2, 2, 2)
33-
azs = slice(data.aws_availability_zones.available.names, 0, 3)
32+
partition = cidrsubnets(aws_vpc_ipam_preview_next_cidr.main.cidr, 2, 2, 2, 2)
33+
azs = slice(data.aws_availability_zones.available.names, 0, 3)
3434
private_subnets1 = cidrsubnets(local.partition[0], 2, 2, 2, 2)
3535
private_subnets2 = cidrsubnets(local.partition[2], 2, 2, 2, 2)
3636
private_subnets3 = cidrsubnets(local.partition[3], 2, 2, 2, 2)
37-
public_subnets = cidrsubnets(local.partition[1], 2, 2, 2)
37+
public_subnets = cidrsubnets(local.partition[1], 2, 2, 2)
3838
}

infra/aws/terraform/kops-infra-ci/main.tf

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,20 @@ resource "aws_iam_openid_connect_provider" "google_prow_idp" {
2828
# GlobalSign root certificate (Google Managed Certficates)
2929
"08745487e891c19e3078c1f2a07e452950ef36f6"
3030
]
31+
32+
33+
tags = merge(var.tags, var.janitor_tags, {
34+
"region" = data.aws_region.current.region
35+
})
3136
}
3237

3338
## Used by kOps to store the state of the kOps created
3439
resource "aws_s3_bucket" "kops_state_store" {
3540
provider = aws.kops-infra-ci
3641
bucket = "k8s-kops-ci-prow-state-store"
37-
tags = var.tags
42+
tags = merge(var.tags, var.janitor_tags, {
43+
"region" = data.aws_region.current.region
44+
})
3845
}
3946

4047
resource "aws_s3_bucket_ownership_controls" "kops_state_store" {
@@ -50,7 +57,9 @@ resource "aws_s3_bucket_ownership_controls" "kops_state_store" {
5057
resource "aws_s3_bucket" "kops_oidc_store" {
5158
provider = aws.kops-infra-ci
5259
bucket = "k8s-kops-ci-prow"
53-
tags = var.tags
60+
tags = merge(var.tags, var.janitor_tags, {
61+
"region" = data.aws_region.current.region
62+
})
5463
}
5564

5665
resource "aws_s3_bucket_ownership_controls" "kops_oidc_store" {

infra/aws/terraform/kops-infra-ci/variables.tf

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,13 @@ variable "tags" {
2929
}
3030
}
3131

32+
variable "janitor_tags" {
33+
type = map(string)
34+
default = {
35+
"Shared" = "Ignore"
36+
}
37+
}
38+
3239
variable "region" {
3340
type = string
3441
default = "us-east-2"

infra/aws/terraform/kops-infra-ci/vpc.tf

Lines changed: 9 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ resource "aws_vpc_ipam" "main" {
2121
region_name = data.aws_region.current.region
2222
}
2323

24-
tags = merge(var.tags, {
24+
tags = merge(var.tags, var.janitor_tags, {
2525
"region" = data.aws_region.current.region
2626
})
2727
}
@@ -41,7 +41,7 @@ resource "aws_vpc_ipam_pool" "main" {
4141
address_family = "ipv4"
4242
ipam_scope_id = aws_vpc_ipam.main.private_default_scope_id
4343
locale = data.aws_region.current.region
44-
tags = merge(var.tags, {
44+
tags = merge(var.tags, var.janitor_tags, {
4545
"region" = data.aws_region.current.region
4646
})
4747
}
@@ -98,7 +98,7 @@ module "vpc" {
9898
"kubernetes.io/role/internal-elb" = 1
9999
}
100100

101-
tags = merge(var.tags, {
101+
tags = merge(var.tags, var.janitor_tags, {
102102
"region" = data.aws_region.current.region
103103
})
104104
}
@@ -148,7 +148,9 @@ module "vpc_endpoints" {
148148
}
149149
})
150150

151-
tags = var.tags
151+
tags = merge(var.tags, var.janitor_tags, {
152+
"region" = data.aws_region.current.region
153+
})
152154
}
153155

154156
// Required by kOps CI
@@ -157,5 +159,7 @@ resource "aws_route53_zone" "hosted_zone" {
157159

158160
name = "tests-kops-aws.k8s.io"
159161

160-
tags = var.tags
162+
tags = merge(var.tags, var.janitor_tags, {
163+
"region" = data.aws_region.current.region
164+
})
161165
}

0 commit comments

Comments
 (0)