Skip to content

Commit 2885a4f

Browse files
authored
Merge pull request #6929 from RainbowMango/pr_bump_controllerruntime_224
Bump controller-runtime from v0.21.0 to v0.22.4
2 parents 27ca690 + d89c544 commit 2885a4f

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

46 files changed

+1656
-379
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ require (
5555
k8s.io/utils v0.0.0-20250604170112-4c0f3b243397
5656
layeh.com/gopher-json v0.0.0-20201124131017-552bb3c4c3bf
5757
sigs.k8s.io/cluster-api v1.7.1
58-
sigs.k8s.io/controller-runtime v0.21.0
58+
sigs.k8s.io/controller-runtime v0.22.4
5959
sigs.k8s.io/custom-metrics-apiserver v1.33.0
6060
sigs.k8s.io/kind v0.29.0
6161
sigs.k8s.io/mcs-api v0.1.0

go.sum

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -915,8 +915,8 @@ sigs.k8s.io/apiserver-network-proxy/konnectivity-client v0.31.2/go.mod h1:Ve9uj1
915915
sigs.k8s.io/cluster-api v1.7.1 h1:JkMAbAMzBM+WBHxXLTJXTiCisv1PAaHRzld/3qrmLYY=
916916
sigs.k8s.io/cluster-api v1.7.1/go.mod h1:V9ZhKLvQtsDODwjXOKgbitjyCmC71yMBwDcMyNNIov0=
917917
sigs.k8s.io/controller-runtime v0.6.1/go.mod h1:XRYBPdbf5XJu9kpS84VJiZ7h/u1hF3gEORz0efEja7A=
918-
sigs.k8s.io/controller-runtime v0.21.0 h1:CYfjpEuicjUecRk+KAeyYh+ouUBn4llGyDYytIGcJS8=
919-
sigs.k8s.io/controller-runtime v0.21.0/go.mod h1:OSg14+F65eWqIu4DceX7k/+QRAbTTvxeQSNSOQpukWM=
918+
sigs.k8s.io/controller-runtime v0.22.4 h1:GEjV7KV3TY8e+tJ2LCTxUTanW4z/FmNB7l327UfMq9A=
919+
sigs.k8s.io/controller-runtime v0.22.4/go.mod h1:+QX1XUpTXN4mLoblf4tqr5CQcyHPAki2HLXqQMY6vh8=
920920
sigs.k8s.io/controller-tools v0.3.0/go.mod h1:enhtKGfxZD1GFEoMgP8Fdbu+uKQ/cq1/WGJhdVChfvI=
921921
sigs.k8s.io/custom-metrics-apiserver v1.33.0 h1:9uHgBT8ah8PZG+iMAhkXH25kIOmWs7JcrasFA0d83rI=
922922
sigs.k8s.io/custom-metrics-apiserver v1.33.0/go.mod h1:7lxzUW4z5aEaXOtqOdzh8+pzJ/gT/E3B6LooxIP3tKc=

pkg/controllers/execution/execution_controller.go

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -358,6 +358,16 @@ func (c *Controller) updateWorkDispatchingConditionIfNeeded(ctx context.Context,
358358
return err
359359
}
360360

361+
if work.GetObjectKind().GroupVersionKind().Empty() {
362+
// In unit tests, we need to verify how many events are emitted. However, when using the fake client,
363+
// the work object may not have TypeMeta (APIVersion/Kind) set, which prevents building a proper
364+
// object reference and thus no event is actually emitted. This workaround ensures the GVK is set
365+
// so event emission, and thereby event counting in unit tests, works as expected.
366+
// Since controller-runtime v0.22.0, the group version kind is not set when using fake client.
367+
// See https://github.com/kubernetes-sigs/controller-runtime/pull/3229 for more details.
368+
work.SetGroupVersionKind(workv1alpha1.SchemeGroupVersion.WithKind("Work"))
369+
}
370+
361371
obj, err := helper.ToUnstructured(work)
362372
if err != nil {
363373
return err

pkg/controllers/federatedhpa/federatedhpa_controller_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,11 @@ func (m *MockClient) List(ctx context.Context, list client.ObjectList, opts ...c
5858
return args.Error(0)
5959
}
6060

61+
func (m *MockClient) Apply(ctx context.Context, obj runtime.ApplyConfiguration, opts ...client.ApplyOption) error {
62+
args := m.Called(ctx, obj, opts)
63+
return args.Error(0)
64+
}
65+
6166
func (m *MockClient) Create(ctx context.Context, obj client.Object, opts ...client.CreateOption) error {
6267
args := m.Called(ctx, obj, opts)
6368
return args.Error(0)

pkg/controllers/multiclusterservice/endpointslice_dispatch_controller_test.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -818,6 +818,11 @@ func (m *MockClient) List(ctx context.Context, list client.ObjectList, opts ...c
818818
return args.Error(0)
819819
}
820820

821+
func (m *MockClient) Apply(ctx context.Context, obj runtime.ApplyConfiguration, opts ...client.ApplyOption) error {
822+
args := m.Called(ctx, obj, opts)
823+
return args.Error(0)
824+
}
825+
821826
func (m *MockClient) Create(ctx context.Context, obj client.Object, opts ...client.CreateOption) error {
822827
args := m.Called(ctx, obj, opts)
823828
return args.Error(0)

pkg/controllers/namespace/namespace_sync_controller.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -82,6 +82,14 @@ func (c *Controller) Reconcile(ctx context.Context, req controllerruntime.Reques
8282

8383
return controllerruntime.Result{}, err
8484
}
85+
if namespace.GetObjectKind().GroupVersionKind().Empty() {
86+
// In unit tests, we need to verify that a work object is created for the corresponding namespace.
87+
// However, the fake client does not set TypeMeta information, which results in an incorrect generated work object name.
88+
// This ensures correct GVK is set so work name generation in tests works as expected.
89+
// Since controller-runtime v0.22.0, the group version kind is not set when using fake client.
90+
// See https://github.com/kubernetes-sigs/controller-runtime/pull/3229 for more details.
91+
namespace.SetGroupVersionKind(corev1.SchemeGroupVersion.WithKind("Namespace"))
92+
}
8593

8694
if !namespace.DeletionTimestamp.IsZero() {
8795
// Do nothing, just return as we have added owner reference to Work.

vendor/modules.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1811,7 +1811,7 @@ sigs.k8s.io/cluster-api/errors
18111811
sigs.k8s.io/cluster-api/feature
18121812
sigs.k8s.io/cluster-api/util/certs
18131813
sigs.k8s.io/cluster-api/util/secret
1814-
# sigs.k8s.io/controller-runtime v0.21.0
1814+
# sigs.k8s.io/controller-runtime v0.22.4
18151815
## explicit; go 1.24.0
18161816
sigs.k8s.io/controller-runtime
18171817
sigs.k8s.io/controller-runtime/pkg/builder
@@ -1859,6 +1859,7 @@ sigs.k8s.io/controller-runtime/pkg/webhook
18591859
sigs.k8s.io/controller-runtime/pkg/webhook/admission
18601860
sigs.k8s.io/controller-runtime/pkg/webhook/admission/metrics
18611861
sigs.k8s.io/controller-runtime/pkg/webhook/conversion
1862+
sigs.k8s.io/controller-runtime/pkg/webhook/conversion/metrics
18621863
sigs.k8s.io/controller-runtime/pkg/webhook/internal/metrics
18631864
# sigs.k8s.io/custom-metrics-apiserver v1.33.0
18641865
## explicit; go 1.24.0

vendor/sigs.k8s.io/controller-runtime/.golangci.yml

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/sigs.k8s.io/controller-runtime/OWNERS_ALIASES

Lines changed: 3 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

vendor/sigs.k8s.io/controller-runtime/README.md

Lines changed: 3 additions & 3 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)