Skip to content

Commit e7d6dde

Browse files
committed
feat: Update AWS CCM versions
Use latest versions available and only use Helm values to set image name and args.
1 parent 0a74124 commit e7d6dde

File tree

9 files changed

+224
-37
lines changed

9 files changed

+224
-37
lines changed
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#=================================================================
88
apiVersion: v1
99
data:
10-
aws-ccm-v1.27.1.yaml: |
10+
aws-ccm-v1.27.8.yaml: |
1111
apiVersion: v1
1212
kind: ServiceAccount
1313
metadata:
@@ -160,7 +160,7 @@ data:
160160
- --cloud-provider=aws
161161
- --configure-cloud-routes=false
162162
env: []
163-
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.27.1
163+
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.27.8
164164
name: aws-cloud-controller-manager
165165
resources:
166166
requests:
@@ -186,4 +186,4 @@ data:
186186
kind: ConfigMap
187187
metadata:
188188
creationTimestamp: null
189-
name: aws-ccm-v1.27.1
189+
name: aws-ccm-v1.27.8
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#=================================================================
88
apiVersion: v1
99
data:
10-
aws-ccm-v1.28.1.yaml: |
10+
aws-ccm-v1.28.7.yaml: |
1111
apiVersion: v1
1212
kind: ServiceAccount
1313
metadata:
@@ -160,7 +160,7 @@ data:
160160
- --cloud-provider=aws
161161
- --configure-cloud-routes=false
162162
env: []
163-
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.28.1
163+
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.28.7
164164
name: aws-cloud-controller-manager
165165
resources:
166166
requests:
@@ -186,4 +186,4 @@ data:
186186
kind: ConfigMap
187187
metadata:
188188
creationTimestamp: null
189-
name: aws-ccm-v1.28.1
189+
name: aws-ccm-v1.28.7
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
#=================================================================
88
apiVersion: v1
99
data:
10-
aws-ccm-v1.29.2.yaml: |
10+
aws-ccm-v1.29.4.yaml: |
1111
apiVersion: v1
1212
kind: ServiceAccount
1313
metadata:
@@ -160,7 +160,7 @@ data:
160160
- --cloud-provider=aws
161161
- --configure-cloud-routes=false
162162
env: []
163-
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.29.2
163+
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.29.4
164164
name: aws-cloud-controller-manager
165165
resources:
166166
requests:
@@ -186,4 +186,4 @@ data:
186186
kind: ConfigMap
187187
metadata:
188188
creationTimestamp: null
189-
name: aws-ccm-v1.29.2
189+
name: aws-ccm-v1.29.4
Lines changed: 189 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,189 @@
1+
# Copyright 2024 Nutanix. All rights reserved.
2+
# SPDX-License-Identifier: Apache-2.0
3+
4+
#=================================================================
5+
# DO NOT EDIT THIS FILE
6+
# IT HAS BEEN GENERATED BY /hack/addons/update-aws-ccm.sh
7+
#=================================================================
8+
apiVersion: v1
9+
data:
10+
aws-ccm-v1.30.1.yaml: |
11+
apiVersion: v1
12+
kind: ServiceAccount
13+
metadata:
14+
labels:
15+
helm.sh/chart: aws-cloud-controller-manager-0.0.8
16+
name: cloud-controller-manager
17+
namespace: kube-system
18+
---
19+
apiVersion: rbac.authorization.k8s.io/v1
20+
kind: ClusterRole
21+
metadata:
22+
labels:
23+
helm.sh/chart: aws-cloud-controller-manager-0.0.8
24+
name: system:cloud-controller-manager
25+
rules:
26+
- apiGroups:
27+
- ""
28+
resources:
29+
- events
30+
verbs:
31+
- create
32+
- patch
33+
- update
34+
- apiGroups:
35+
- ""
36+
resources:
37+
- nodes
38+
verbs:
39+
- '*'
40+
- apiGroups:
41+
- ""
42+
resources:
43+
- nodes/status
44+
verbs:
45+
- patch
46+
- apiGroups:
47+
- ""
48+
resources:
49+
- services
50+
verbs:
51+
- list
52+
- patch
53+
- update
54+
- watch
55+
- apiGroups:
56+
- ""
57+
resources:
58+
- services/status
59+
verbs:
60+
- list
61+
- patch
62+
- update
63+
- watch
64+
- apiGroups:
65+
- ""
66+
resources:
67+
- serviceaccounts
68+
verbs:
69+
- create
70+
- apiGroups:
71+
- ""
72+
resources:
73+
- persistentvolumes
74+
verbs:
75+
- get
76+
- list
77+
- update
78+
- watch
79+
- apiGroups:
80+
- ""
81+
resources:
82+
- endpoints
83+
verbs:
84+
- create
85+
- get
86+
- list
87+
- watch
88+
- update
89+
- apiGroups:
90+
- coordination.k8s.io
91+
resources:
92+
- leases
93+
verbs:
94+
- create
95+
- get
96+
- list
97+
- watch
98+
- update
99+
- apiGroups:
100+
- ""
101+
resources:
102+
- serviceaccounts/token
103+
verbs:
104+
- create
105+
---
106+
apiVersion: rbac.authorization.k8s.io/v1
107+
kind: RoleBinding
108+
metadata:
109+
labels:
110+
helm.sh/chart: aws-cloud-controller-manager-0.0.8
111+
name: cloud-controller-manager:apiserver-authentication-reader
112+
namespace: kube-system
113+
roleRef:
114+
apiGroup: rbac.authorization.k8s.io
115+
kind: Role
116+
name: extension-apiserver-authentication-reader
117+
subjects:
118+
- apiGroup: ""
119+
kind: ServiceAccount
120+
name: cloud-controller-manager
121+
namespace: kube-system
122+
---
123+
apiVersion: rbac.authorization.k8s.io/v1
124+
kind: ClusterRoleBinding
125+
metadata:
126+
labels:
127+
helm.sh/chart: aws-cloud-controller-manager-0.0.8
128+
name: system:cloud-controller-manager
129+
roleRef:
130+
apiGroup: rbac.authorization.k8s.io
131+
kind: ClusterRole
132+
name: system:cloud-controller-manager
133+
subjects:
134+
- apiGroup: ""
135+
kind: ServiceAccount
136+
name: cloud-controller-manager
137+
namespace: kube-system
138+
---
139+
apiVersion: apps/v1
140+
kind: DaemonSet
141+
metadata:
142+
labels:
143+
helm.sh/chart: aws-cloud-controller-manager-0.0.8
144+
k8s-app: aws-cloud-controller-manager
145+
name: aws-cloud-controller-manager
146+
namespace: kube-system
147+
spec:
148+
selector:
149+
matchLabels:
150+
k8s-app: aws-cloud-controller-manager
151+
template:
152+
metadata:
153+
labels:
154+
k8s-app: aws-cloud-controller-manager
155+
name: aws-cloud-controller-manager
156+
spec:
157+
containers:
158+
- args:
159+
- --v=2
160+
- --cloud-provider=aws
161+
- --configure-cloud-routes=false
162+
env: []
163+
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.30.1
164+
name: aws-cloud-controller-manager
165+
resources:
166+
requests:
167+
cpu: 200m
168+
securityContext: {}
169+
dnsPolicy: Default
170+
hostNetwork: true
171+
nodeSelector:
172+
node-role.kubernetes.io/control-plane: ""
173+
priorityClassName: system-node-critical
174+
securityContext: {}
175+
serviceAccountName: cloud-controller-manager
176+
tolerations:
177+
- effect: NoSchedule
178+
key: node.cloudprovider.kubernetes.io/uninitialized
179+
value: "true"
180+
- effect: NoSchedule
181+
key: node-role.kubernetes.io/master
182+
- effect: NoSchedule
183+
key: node-role.kubernetes.io/control-plane
184+
updateStrategy:
185+
type: RollingUpdate
186+
kind: ConfigMap
187+
metadata:
188+
creationTimestamp: null
189+
name: aws-ccm-v1.30.1

hack/addons/kustomize/aws-ccm/helm-values.yaml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,3 +10,8 @@
1010
# Using hostNetworking allows the AWS CCM to start before the Calico Pods.
1111
# The upstream CAPA templates are also already using hostNetworking for the CCM Pods.
1212
hostNetworking: true
13+
14+
args:
15+
- --v=2
16+
- --cloud-provider=aws
17+
- --configure-cloud-routes=false

hack/addons/kustomize/aws-ccm/kustomization.yaml.tmpl

Lines changed: 4 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,18 +12,9 @@ helmCharts:
1212
repo: https://kubernetes.github.io/cloud-provider-aws
1313
releaseName: aws-cloud-controller-manager
1414
version: ${AWS_CCM_CHART_VERSION}
15-
valuesFile: helm-values.yaml
1615
includeCRDs: true
1716
skipTests: true
18-
19-
patches:
20-
- patch: |-
21-
- op: add
22-
path: /spec/template/spec/containers/0/args/-
23-
value: --configure-cloud-routes=false
24-
target:
25-
kind: DaemonSet
26-
27-
images:
28-
- name: registry.k8s.io/provider-aws/cloud-controller-manager
29-
newTag: ${AWS_CCM_VERSION}
17+
valuesFile: helm-values.yaml
18+
valuesInline:
19+
image:
20+
tag: ${AWS_CCM_VERSION}

make/addons.mk

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -10,13 +10,14 @@ export AWS_EBS_CSI_CHART_VERSION := v2.28.1
1010
export NUTANIX_STORAGE_CSI_CHART_VERSION := 3.0.0-beta.1912
1111
export NUTANIX_SNAPSHOT_CSI_CHART_VERSION := 6.3.2
1212
export LOCAL_PATH_CSI_CHART_VERSION := 0.0.29
13-
# a map of AWS CCM versions
14-
export AWS_CCM_VERSION_127 := v1.27.1
15-
export AWS_CCM_CHART_VERSION_127 := 0.0.8
16-
export AWS_CCM_VERSION_128 := v1.28.1
17-
export AWS_CCM_CHART_VERSION_128 := 0.0.8
18-
export AWS_CCM_VERSION_129 := v1.29.2
19-
export AWS_CCM_CHART_VERSION_129 := 0.0.8
13+
# AWS CCM uses the same chart version for all kubernetes versions. The image used in the deployment will
14+
# be updated by the addon kustomization for CRS deployments and via Helm values for HelmAddon deployments.
15+
export AWS_CCM_CHART_VERSION := 0.0.8
16+
# A map of AWS CCM versions.
17+
export AWS_CCM_VERSION_127 := v1.27.8
18+
export AWS_CCM_VERSION_128 := v1.28.7
19+
export AWS_CCM_VERSION_129 := v1.29.4
20+
export AWS_CCM_VERSION_130 := v1.30.1
2021

2122
export NUTANIX_CCM_CHART_VERSION := 0.3.3
2223

@@ -25,7 +26,7 @@ export KUBE_VIP_VERSION := v0.8.0
2526
export METALLB_CHART_VERSION := 0.14.5
2627

2728
.PHONY: addons.sync
28-
addons.sync: $(addprefix update-addon.,calico cilium nfd cluster-autoscaler aws-ebs-csi aws-ccm.127 aws-ccm.128 aws-ccm.129 kube-vip)
29+
addons.sync: $(addprefix update-addon.,calico cilium nfd cluster-autoscaler aws-ebs-csi aws-ccm.127 aws-ccm.128 aws-ccm.129 aws-ccm.130 kube-vip)
2930

3031
.PHONY: update-addon.calico
3132
update-addon.calico: ; $(info $(M) updating calico manifests)
@@ -53,7 +54,7 @@ update-addon.local-path-provisioner-csi: ; $(info $(M) updating local-path-provi
5354

5455
.PHONY: update-addon.aws-ccm.%
5556
update-addon.aws-ccm.%: ; $(info $(M) updating aws ccm $* manifests)
56-
./hack/addons/update-aws-ccm.sh $(AWS_CCM_VERSION_$*) $(AWS_CCM_CHART_VERSION_$*)
57+
./hack/addons/update-aws-ccm.sh $(AWS_CCM_VERSION_$*) $(AWS_CCM_CHART_VERSION)
5758

5859
.PHONY: update-addon.kube-vip
5960
update-addon.kube-vip: ; $(info $(M) updating kube-vip manifests)

pkg/handlers/generic/lifecycle/ccm/aws/handler.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -32,9 +32,10 @@ func (a *AWSCCMConfig) AddFlags(prefix string, flags *pflag.FlagSet) {
3232
&a.kubernetesMinorVersionToCCMConfigMapNames,
3333
prefix+".default-aws-ccm-configmap-names",
3434
map[string]string{
35-
"1.27": "aws-ccm-v1.27.1",
36-
"1.28": "aws-ccm-v1.28.1",
37-
"1.29": "aws-ccm-v1.29.2",
35+
"1.27": "aws-ccm-v1.27.8",
36+
"1.28": "aws-ccm-v1.28.7",
37+
"1.29": "aws-ccm-v1.29.4",
38+
"1.30": "aws-ccm-v1.30.1",
3839
},
3940
"map of provider cluster implementation type to default installation ConfigMap name",
4041
)

pkg/handlers/generic/lifecycle/ccm/aws/handler_test.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ spec:
5353
- --cloud-provider=aws
5454
- --configure-cloud-routes=false
5555
env: []
56-
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.27.1
56+
image: registry.k8s.io/provider-aws/cloud-controller-manager:v1.27.8
5757
name: aws-cloud-controller-manager
5858
resources:
5959
requests:
@@ -87,11 +87,11 @@ func Test_generateCCMConfigMapForCluster(t *testing.T) {
8787
name: "Can set cluster name in arguments",
8888
startConfigMap: &corev1.ConfigMap{
8989
ObjectMeta: metav1.ObjectMeta{
90-
Name: "aws-ccm-v1.27.1",
90+
Name: "aws-ccm-v1.27.8",
9191
Namespace: "default",
9292
},
9393
Data: map[string]string{
94-
"aws-ccm-v1.27.1.yaml": startAWSCCMConfigMap,
94+
"aws-ccm-v1.27.8.yaml": startAWSCCMConfigMap,
9595
},
9696
},
9797
cluster: &clusterv1.Cluster{

0 commit comments

Comments
 (0)