Skip to content

Commit 3c46bf8

Browse files
authored
Merge pull request #7208 from koksay/eks-k8s-1.29-upgrade
[eks-prow-build] K8s upgrade from 1.28 to 1.30
2 parents dc6e44e + 91d9119 commit 3c46bf8

File tree

7 files changed

+41
-11
lines changed

7 files changed

+41
-11
lines changed

infra/aws/terraform/modules/eks-prow-iam/policy_plan.tf

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,8 @@ data "aws_iam_policy_document" "eks_plan" {
9696
"s3:GetObject",
9797
"s3:ListBucket",
9898
"sqs:GetQueueAttributes",
99-
"sqs:ListQueueTags"
99+
"sqs:ListQueueTags",
100+
"ssm:GetParameter"
100101
]
101102
}
102103
}

infra/aws/terraform/prow-build-cluster/iam.tf

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,25 @@ resource "aws_iam_role" "eks_prow_admin" {
4545
]
4646
}
4747
}
48+
},
49+
{
50+
"Effect" : "Allow",
51+
"Principal" : {
52+
"Federated" : aws_iam_openid_connect_provider.k8s_infra_prow[0].arn
53+
},
54+
"Action" : "sts:AssumeRoleWithWebIdentity",
55+
"Condition" : {
56+
"StringEquals" : {
57+
"container.googleapis.com/v1/projects/k8s-infra-prow/locations/us-central1/clusters/prow:sub" : [
58+
"system:serviceaccount:default:deck",
59+
"system:serviceaccount:default:config-bootstrapper",
60+
"system:serviceaccount:default:crier",
61+
"system:serviceaccount:default:sinker",
62+
"system:serviceaccount:default:prow-controller-manager",
63+
"system:serviceaccount:default:hook"
64+
]
65+
}
66+
}
4867
}
4968
]
5069
})

infra/aws/terraform/prow-build-cluster/node_group_stable.tf

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,8 +33,10 @@ locals {
3333

3434
iam_role_permissions_boundary = data.aws_iam_policy.eks_resources_permission_boundary.arn
3535

36-
ami_type = "BOTTLEROCKET_x86_64"
37-
platform = "bottlerocket"
36+
ami_type = "BOTTLEROCKET_x86_64"
37+
platform = "bottlerocket"
38+
use_latest_ami_release_version = true
39+
3840
bootstrap_extra_args = <<-EOT
3941
# Bottlerocket instances don't have SSH installed by default, but
4042
# there's the admin container that can be enabled and that comes
@@ -56,7 +58,7 @@ locals {
5658

5759
force_update_version = false
5860
update_config = {
59-
max_unavailable_percentage = var.node_max_unavailable_percentage
61+
max_unavailable = var.node_max_unavailable
6062
}
6163

6264
capacity_type = "ON_DEMAND"

infra/aws/terraform/prow-build-cluster/prow.tf

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,3 +25,11 @@ resource "aws_iam_openid_connect_provider" "k8s_prow" {
2525
client_id_list = ["sts.amazonaws.com"]
2626
thumbprint_list = ["08745487e891c19e3078c1f2a07e452950ef36f6"]
2727
}
28+
29+
resource "aws_iam_openid_connect_provider" "k8s_infra_prow" {
30+
count = local.configure_prow ? 1 : 0
31+
32+
url = "https://container.googleapis.com/v1/projects/k8s-infra-prow/locations/us-central1/clusters/prow"
33+
client_id_list = ["sts.amazonaws.com"]
34+
thumbprint_list = ["08745487e891c19e3078c1f2a07e452950ef36f6"]
35+
}

infra/aws/terraform/prow-build-cluster/terraform.canary.tfvars

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,9 @@ eks_cluster_admins = [
3131
]
3232

3333
cluster_name = "prow-canary-cluster"
34-
cluster_version = "1.28"
34+
cluster_version = "1.29"
3535

36-
node_group_version_stable = "1.28"
36+
node_group_version_stable = "1.29"
3737
node_instance_types_stable = ["r5ad.xlarge"]
3838
node_desired_size_stable = 1
3939

@@ -50,4 +50,4 @@ node_labels_stable = {
5050

5151
node_volume_size = 100
5252

53-
node_max_unavailable_percentage = 100 # To ease testing
53+
node_max_unavailable = 1

infra/aws/terraform/prow-build-cluster/terraform.prod.tfvars

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,9 +33,9 @@ eks_cluster_viewers = [
3333
]
3434

3535
cluster_name = "prow-build-cluster"
36-
cluster_version = "1.28"
36+
cluster_version = "1.30"
3737

38-
node_group_version_stable = "1.28"
38+
node_group_version_stable = "1.30"
3939
node_instance_types_stable = ["r5ad.2xlarge"]
4040
node_desired_size_stable = 3
4141

@@ -52,4 +52,4 @@ node_labels_stable = {
5252

5353
node_volume_size = 100
5454

55-
node_max_unavailable_percentage = 100 # To ease testing
55+
node_max_unavailable = 1

infra/aws/terraform/prow-build-cluster/variables.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,7 @@ variable "node_desired_size_stable" {
113113
nullable = false
114114
}
115115

116-
variable "node_max_unavailable_percentage" {
116+
variable "node_max_unavailable" {
117117
type = number
118118
description = "Maximum unavailable nodes in a node group"
119119
}

0 commit comments

Comments
 (0)