Skip to content

Commit b5229e8

Browse files
Merge pull request #2439 from bertinatto/unrevert-bump-1.32.8
[release-4.19] OCPBUGS-60510: Unrevert bump to v1.32.8
2 parents 169f654 + a3f0465 commit b5229e8

File tree

11 files changed

+236
-106
lines changed

11 files changed

+236
-106
lines changed

.go-version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
1.23.10
1+
1.23.11

CHANGELOG/CHANGELOG-1.32.md

Lines changed: 189 additions & 88 deletions
Large diffs are not rendered by default.

build/build-image/cross/VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v1.32.0-go1.23.10-bullseye.0
1+
v1.32.0-go1.23.11-bullseye.0

build/common.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -97,8 +97,8 @@ readonly KUBE_RSYNC_PORT="${KUBE_RSYNC_PORT:-}"
9797
readonly KUBE_CONTAINER_RSYNC_PORT=8730
9898

9999
# These are the default versions (image tags) for their respective base images.
100-
readonly __default_distroless_iptables_version=v0.6.11
101-
readonly __default_go_runner_version=v2.4.0-go1.23.10-bookworm.0
100+
readonly __default_distroless_iptables_version=v0.6.12
101+
readonly __default_go_runner_version=v2.4.0-go1.23.11-bookworm.0
102102
readonly __default_setcap_version=bookworm-v1.0.4
103103

104104
# These are the base images for the Docker-wrapped binaries.

build/dependencies.yaml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ dependencies:
116116

117117
# Golang
118118
- name: "golang: upstream version"
119-
version: 1.23.10
119+
version: 1.23.11
120120
refPaths:
121121
- path: .go-version
122122
- path: build/build-image/cross/VERSION
@@ -140,7 +140,7 @@ dependencies:
140140
match: golang:([0-9]+\.[0-9]+).0-bullseye
141141

142142
- name: "registry.k8s.io/kube-cross: dependents"
143-
version: v1.32.0-go1.23.10-bullseye.0
143+
version: v1.32.0-go1.23.11-bullseye.0
144144
refPaths:
145145
- path: build/build-image/cross/VERSION
146146

@@ -178,15 +178,15 @@ dependencies:
178178
match: registry\.k8s\.io\/build-image\/debian-base:[a-zA-Z]+\-v((([0-9]+)\.([0-9]+)\.([0-9]+)(?:-([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?)
179179

180180
- name: "registry.k8s.io/distroless-iptables: dependents"
181-
version: v0.6.11
181+
version: v0.6.12
182182
refPaths:
183183
- path: build/common.sh
184184
match: __default_distroless_iptables_version=
185185
- path: test/utils/image/manifest.go
186186
match: configs\[DistrolessIptables\] = Config{list\.BuildImageRegistry, "distroless-iptables", "v([0-9]+)\.([0-9]+)\.([0-9]+)"}
187187

188188
- name: "registry.k8s.io/go-runner: dependents"
189-
version: v2.4.0-go1.23.10-bookworm.0
189+
version: v2.4.0-go1.23.11-bookworm.0
190190
refPaths:
191191
- path: build/common.sh
192192
match: __default_go_runner_version=

openshift-hack/images/hyperkube/Dockerfile.rhel

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,4 +14,4 @@ COPY --from=builder /tmp/build/* /usr/bin/
1414
LABEL io.k8s.display-name="OpenShift Kubernetes Server Commands" \
1515
io.k8s.description="OpenShift is a platform for developing, building, and deploying containerized applications." \
1616
io.openshift.tags="openshift,hyperkube" \
17-
io.openshift.build.versions="kubernetes=1.32.7"
17+
io.openshift.build.versions="kubernetes=1.32.8"

plugin/pkg/admission/noderestriction/admission.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -518,6 +518,11 @@ func (p *Plugin) admitNode(nodeName string, a admission.Attributes) error {
518518
return admission.NewForbidden(a, fmt.Errorf("node %q is not allowed to modify taints", nodeName))
519519
}
520520

521+
// Don't allow a node to update its own ownerReferences.
522+
if !apiequality.Semantic.DeepEqual(node.OwnerReferences, oldNode.OwnerReferences) {
523+
return admission.NewForbidden(a, fmt.Errorf("node %q is not allowed to modify ownerReferences", nodeName))
524+
}
525+
521526
// Don't allow a node to update labels outside the allowed set.
522527
// This would allow a node to add or modify its labels in a way that would let it steer privileged workloads to itself.
523528
modifiedLabels := getModifiedLabels(node.Labels, oldNode.Labels)

plugin/pkg/admission/noderestriction/admission_test.go

Lines changed: 30 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -254,10 +254,14 @@ func (a *admitTestCase) run(t *testing.T) {
254254

255255
func Test_nodePlugin_Admit(t *testing.T) {
256256
var (
257-
mynode = &user.DefaultInfo{Name: "system:node:mynode", Groups: []string{"system:nodes"}}
258-
bob = &user.DefaultInfo{Name: "bob"}
257+
trueRef = true
258+
mynode = &user.DefaultInfo{Name: "system:node:mynode", Groups: []string{"system:nodes"}}
259+
bob = &user.DefaultInfo{Name: "bob"}
260+
261+
mynodeObjMeta = metav1.ObjectMeta{Name: "mynode", UID: "mynode-uid"}
262+
mynodeObjMetaOwnerRefA = metav1.ObjectMeta{Name: "mynode", UID: "mynode-uid", OwnerReferences: []metav1.OwnerReference{{Name: "fooerA", Controller: &trueRef}}}
263+
mynodeObjMetaOwnerRefB = metav1.ObjectMeta{Name: "mynode", UID: "mynode-uid", OwnerReferences: []metav1.OwnerReference{{Name: "fooerB", Controller: &trueRef}}}
259264

260-
mynodeObjMeta = metav1.ObjectMeta{Name: "mynode", UID: "mynode-uid"}
261265
mynodeObj = &api.Node{ObjectMeta: mynodeObjMeta}
262266
mynodeObjConfigA = &api.Node{ObjectMeta: mynodeObjMeta, Spec: api.NodeSpec{ConfigSource: &api.NodeConfigSource{
263267
ConfigMap: &api.ConfigMapNodeConfigSource{
@@ -274,9 +278,11 @@ func Test_nodePlugin_Admit(t *testing.T) {
274278
KubeletConfigKey: "kubelet",
275279
}}}}
276280

277-
mynodeObjTaintA = &api.Node{ObjectMeta: mynodeObjMeta, Spec: api.NodeSpec{Taints: []api.Taint{{Key: "mykey", Value: "A"}}}}
278-
mynodeObjTaintB = &api.Node{ObjectMeta: mynodeObjMeta, Spec: api.NodeSpec{Taints: []api.Taint{{Key: "mykey", Value: "B"}}}}
279-
othernodeObj = &api.Node{ObjectMeta: metav1.ObjectMeta{Name: "othernode"}}
281+
mynodeObjTaintA = &api.Node{ObjectMeta: mynodeObjMeta, Spec: api.NodeSpec{Taints: []api.Taint{{Key: "mykey", Value: "A"}}}}
282+
mynodeObjTaintB = &api.Node{ObjectMeta: mynodeObjMeta, Spec: api.NodeSpec{Taints: []api.Taint{{Key: "mykey", Value: "B"}}}}
283+
mynodeObjOwnerRefA = &api.Node{ObjectMeta: mynodeObjMetaOwnerRefA}
284+
mynodeObjOwnerRefB = &api.Node{ObjectMeta: mynodeObjMetaOwnerRefB}
285+
othernodeObj = &api.Node{ObjectMeta: metav1.ObjectMeta{Name: "othernode"}}
280286

281287
coremymirrorpod, v1mymirrorpod = makeTestPod("ns", "mymirrorpod", "mynode", true)
282288
coreothermirrorpod, v1othermirrorpod = makeTestPod("ns", "othermirrorpod", "othernode", true)
@@ -1167,6 +1173,24 @@ func Test_nodePlugin_Admit(t *testing.T) {
11671173
attributes: admission.NewAttributesRecord(setForbiddenUpdateLabels(mynodeObj, "new"), setForbiddenUpdateLabels(mynodeObj, "old"), nodeKind, mynodeObj.Namespace, mynodeObj.Name, nodeResource, "", admission.Update, &metav1.UpdateOptions{}, false, mynode),
11681174
err: `is not allowed to modify labels: foo.node-restriction.kubernetes.io/foo, node-restriction.kubernetes.io/foo, other.k8s.io/foo, other.kubernetes.io/foo`,
11691175
},
1176+
{
1177+
name: "forbid update of my node: add owner reference",
1178+
podsGetter: existingPods,
1179+
attributes: admission.NewAttributesRecord(mynodeObjOwnerRefA, mynodeObj, nodeKind, mynodeObj.Namespace, mynodeObj.Name, nodeResource, "", admission.Update, &metav1.UpdateOptions{}, false, mynode),
1180+
err: "node \"mynode\" is not allowed to modify ownerReferences",
1181+
},
1182+
{
1183+
name: "forbid update of my node: remove owner reference",
1184+
podsGetter: existingPods,
1185+
attributes: admission.NewAttributesRecord(mynodeObj, mynodeObjOwnerRefA, nodeKind, mynodeObj.Namespace, mynodeObj.Name, nodeResource, "", admission.Update, &metav1.UpdateOptions{}, false, mynode),
1186+
err: "node \"mynode\" is not allowed to modify ownerReferences",
1187+
},
1188+
{
1189+
name: "forbid update of my node: change owner reference",
1190+
podsGetter: existingPods,
1191+
attributes: admission.NewAttributesRecord(mynodeObjOwnerRefA, mynodeObjOwnerRefB, nodeKind, mynodeObj.Namespace, mynodeObj.Name, nodeResource, "", admission.Update, &metav1.UpdateOptions{}, false, mynode),
1192+
err: "node \"mynode\" is not allowed to modify ownerReferences",
1193+
},
11701194

11711195
// Other node object
11721196
{

staging/publishing/rules.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2900,4 +2900,4 @@ rules:
29002900
- staging/src/k8s.io/externaljwt
29012901
recursive-delete-patterns:
29022902
- '*/.gitattributes'
2903-
default-go-version: 1.23.10
2903+
default-go-version: 1.23.11

test/images/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ REGISTRY ?= registry.k8s.io/e2e-test-images
1616
GOARM ?= 7
1717
DOCKER_CERT_BASE_PATH ?=
1818
QEMUVERSION=v5.1.0-2
19-
GOLANG_VERSION=1.23.10
19+
GOLANG_VERSION=1.23.11
2020
export
2121

2222
ifndef WHAT

0 commit comments

Comments
 (0)