Skip to content

Conversation

@qiujian16
Copy link
Member

@qiujian16 qiujian16 commented Nov 25, 2025

  • Upgrade k8s.io libraries from v0.33.3 to v0.34.1
    • k8s.io/api, k8s.io/apiextensions-apiserver, k8s.io/apimachinery
    • k8s.io/apiserver, k8s.io/client-go, k8s.io/component-base
  • Upgrade controller-runtime from v0.20.2 to v0.22.3
  • Upgrade open-cluster-management.io/api to latest commit 2337d27c3b7f
  • Upgrade open-cluster-management.io/sdk-go to latest commit c7d6056a7936

Code changes to adapt to API updates:

  • Update cloudevents manager to use new builder.NewConfigLoader() path
  • Update TestingEventRecorder methods to accept context.Context parameter to match updated events.Recorder interface

🤖 Generated with Claude Code

Summary

Related issue(s)

Fixes #

Summary by CodeRabbit

  • Chores

    • Broadly upgraded Kubernetes, cloud, observability, gRPC, OpenTelemetry and other dependencies for improved compatibility and security.
  • Refactor

    • Event recording APIs updated to accept and propagate execution context.
    • Configuration loading migrated to a builder-style API.
  • Tests

    • Adjusted integration test wiring for event watcher/informer interaction to match updated client behavior.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link

coderabbitai bot commented Nov 25, 2025

Walkthrough

Upgrades a large set of dependencies in go.mod (Kubernetes, Open Cluster Management SDK, controller-runtime, Google/cloud/OpenTelemetry, gRPC/protobuf, golang.org/x/*, etc.), adds a context.Context parameter to TestingEventRecorder methods, updates a CloudEvents config-loader import, and removes an informer-to-watcherStore assignment in a test.

Changes

Cohort / File(s) Summary
Dependency Version Updates
go.mod
Broad refresh of many modules: bumps Kubernetes API modules to v0.34.1, updates open-cluster-management.io/*, sigs.k8s.io/controller-runtime, OpenTelemetry, gRPC/protobuf, Google APIs, golang.org/x/*, cloud libraries, and replaces/realigns several indirect dependencies and paths.
Testing event recorder signature change
pkg/addonmanager/addontesting/helpers.go
Adds context.Context parameter to four public methods: Event, Eventf, Warning, Warningf; threads ctx through internal calls without other behavior changes.
CloudEvents config loader import update
pkg/addonmanager/cloudevents/manager.go
Replaces import and usage of generic config loader with open-cluster-management.io/sdk-go/pkg/cloudevents/generic/options/builder and builder.NewConfigLoader; call and behavior remain functionally equivalent.
Test wiring change
test/integration/cloudevents/suite_test.go
Removes the assignment that set the informer on the watcher store (watcherStore.SetInformer(...)), altering test setup wiring for the cloudevents watcher store.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~45 minutes

  • Large, heterogeneous dependency upgrades in go.mod require dependency resolution checks and potentially local go mod tidy / build verification.
  • Public API change in pkg/addonmanager/addontesting/helpers.go needs repository-wide callsite updates verification.
  • Verify CloudEvents loader import change and removed informer wiring in the test do not alter runtime/test behavior unexpectedly.

Possibly related PRs

Suggested labels

lgtm, ok-to-test

Suggested reviewers

  • zhiweiyin318
  • zhujian7
  • elgnay

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change: upgrading dependencies to latest versions, which is accurately reflected in the changeset.
Description check ✅ Passed The description covers dependency upgrades, specific version changes, and code adaptations, but lacks Related issue(s) section and has incomplete Summary structure per template.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
  • 📝 Generate docstrings
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b69bd95 and 04fb851.

⛔ Files ignored due to path filters (295)
  • go.sum is excluded by !**/*.sum
  • vendor/cel.dev/expr/eval.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/LICENSE is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/CHANGES.md is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/LICENSE is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/README.md is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/auth.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/compute.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/detect.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/doc.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/filetypes.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/aws_provider.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/executable_provider.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/externalaccount.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/file_provider.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/info.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/programmatic_provider.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/url_provider.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccount/x509_provider.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/externalaccountuser/externalaccountuser.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/gdch/gdch.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/impersonate/idtoken.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/impersonate/impersonate.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/internal/stsexchange/sts_exchange.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/credentials/selfsignedjwt.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/grpctransport/dial_socketopt.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/grpctransport/directpath.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/grpctransport/grpctransport.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/grpctransport/pool.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/httptransport/httptransport.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/httptransport/transport.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/compute/compute.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/compute/manufacturer.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/compute/manufacturer_linux.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/compute/manufacturer_windows.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/credsfile/credsfile.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/credsfile/filetype.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/credsfile/parse.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/internal.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/jwt/jwt.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/retry/retry.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/cba.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/cert/default_cert.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/cert/enterprise_cert.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/cert/secureconnect_cert.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/cert/workload_cert.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/headers/headers.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/s2a.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/transport/transport.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/trustboundary/external_accounts_config_providers.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/trustboundary/trust_boundary.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/internal/version.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/oauth2adapt/CHANGES.md is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/oauth2adapt/LICENSE is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/oauth2adapt/oauth2adapt.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/auth/threelegged.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/CHANGES.md is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/log.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/metadata.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/retry.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/retry_linux.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/syscheck.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/syscheck_linux.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/compute/metadata/syscheck_windows.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/iam/LICENSE is excluded by !vendor/**
  • vendor/cloud.google.com/go/iam/apiv1/iampb/iam_policy.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/iam/apiv1/iampb/options.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/iam/apiv1/iampb/policy.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/iam/apiv1/iampb/resource_policy_member.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/internal/detect/detect.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/internal/pubsub/message.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/internal/pubsub/publish.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/CHANGES.md is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/LICENSE is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/auxiliary.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/auxiliary_go123.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/doc.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/helpers.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/info.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/pubsubpb/pubsub.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/pubsubpb/pubsub_grpc.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/pubsubpb/schema.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/pubsubpb/schema_grpc.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/schema_client.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/subscription_admin_client.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/topic_admin_client.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/apiv1/version.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/debug.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/doc.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/flow_controller.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/internal/distribution/distribution.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/internal/scheduler/publish_scheduler.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/internal/scheduler/receive_scheduler.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/internal/version.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/iterator.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/message.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/nodebug.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/publisher.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/pubsub.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/pullstream.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/service.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/shutdown.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/subscriber.go is excluded by !vendor/**
  • vendor/cloud.google.com/go/pubsub/v2/trace.go is excluded by !vendor/**
  • vendor/github.com/cloudevents/sdk-go/protocol/kafka_confluent/v2/message.go is excluded by !vendor/**
  • vendor/github.com/cloudevents/sdk-go/protocol/kafka_confluent/v2/option.go is excluded by !vendor/**
  • vendor/github.com/cloudevents/sdk-go/protocol/kafka_confluent/v2/protocol.go is excluded by !vendor/**
  • vendor/github.com/cloudevents/sdk-go/protocol/kafka_confluent/v2/write_producer_message.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/.gitignore is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/00version.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/README.md is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/adminapi.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/adminoptions.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/api.html is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_darwin_amd64.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_darwin_arm64.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_dynamic.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_glibc_linux_amd64.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_glibc_linux_arm64.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_musl_linux_amd64.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_musl_linux_arm64.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/build_windows.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/config.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/consumer.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/context.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/error.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/error_gen.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/event.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/generated_errors.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/glue_rdkafka.h is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/handle.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/header.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/kafka.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/.gitignore is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/LICENSES.txt is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/README.md is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/bundle-import.sh is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/import.sh is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_darwin_amd64.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_darwin_arm64.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_glibc_linux_amd64.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_glibc_linux_arm64.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_musl_linux_amd64.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_musl_linux_arm64.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/librdkafka_windows.a is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/rdkafka.h is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/librdkafka_vendor/rdkafka_mock.h is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/log.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/message.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/metadata.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/misc.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/mockcluster.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/offset.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/producer.go is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/select_rdkafka.h is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/testconf-example.json is excluded by !vendor/**
  • vendor/github.com/confluentinc/confluent-kafka-go/v2/kafka/time.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/CHANGES.md is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/README.md is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/compress.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/curly.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/entity_accessors.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/json.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/jsoniter.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/jsr311.go is excluded by !vendor/**
  • vendor/github.com/emicklei/go-restful/v3/route.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/.cirrus.yml is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/.editorconfig is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/.gitattributes is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/.gitignore is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/CHANGELOG.md is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/CONTRIBUTING.md is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/README.md is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/backend_fen.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/backend_inotify.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/backend_kqueue.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/backend_other.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/backend_windows.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/fsnotify.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/darwin.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_darwin.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_dragonfly.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_freebsd.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_kqueue.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_linux.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_netbsd.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_openbsd.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_solaris.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/debug_windows.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/freebsd.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/internal.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/unix.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/unix2.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/internal/windows.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/mkdoc.zsh is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/shared.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/staticcheck.conf is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/system_bsd.go is excluded by !vendor/**
  • vendor/github.com/fsnotify/fsnotify/system_darwin.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/README.md is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/bytestring.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/cache.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/common.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/decode.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/doc.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/encode.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/encode_map.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/encode_map_go117.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/omitzero_go124.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/omitzero_pre_go124.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/simplevalue.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/stream.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/structfields.go is excluded by !vendor/**
  • vendor/github.com/fxamacker/cbor/v2/tag.go is excluded by !vendor/**
  • vendor/github.com/go-logr/logr/.golangci.yaml is excluded by !vendor/**
  • vendor/github.com/go-logr/logr/funcr/funcr.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/cel/BUILD.bazel is excluded by !vendor/**
  • vendor/github.com/google/cel-go/cel/folding.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/cel/io.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/checker/checker.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/checker/cost.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/common/decls/decls.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/BUILD.bazel is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/README.md is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/extension_option_factory.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/lists.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/math.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/regex.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/sets.go is excluded by !vendor/**
  • vendor/github.com/google/cel-go/ext/strings.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/compiler/context.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/compiler/extensions.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/compiler/helpers.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/compiler/reader.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/jsonschema/models.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/jsonschema/reader.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/jsonschema/writer.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/openapiv2/OpenAPIv2.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/openapiv2/document.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/openapiv3/OpenAPIv3.go is excluded by !vendor/**
  • vendor/github.com/google/gnostic-models/openapiv3/document.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/.gitignore is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/CODE_OF_CONDUCT.md is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/CONTRIBUTING.md is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/LICENSE.md is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/README.md is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/fallback/s2a_fallback.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/authinfo/authinfo.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/handshaker/handshaker.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/handshaker/service/service.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/common_go_proto/common.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/s2a_context_go_proto/s2a_context.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/s2a_go_proto/s2a.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/s2a_go_proto/s2a_grpc.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/v2/common_go_proto/common.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/v2/s2a_context_go_proto/s2a_context.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/v2/s2a_go_proto/s2a.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/proto/v2/s2a_go_proto/s2a_grpc.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/aeadcrypter.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/aesgcm.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/chachapoly.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/aeadcrypter/common.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/ciphersuite.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/counter.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/expander.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/internal/halfconn/halfconn.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/record.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/record/ticketsender.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/tokenmanager/tokenmanager.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/v2/README.md is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/v2/certverifier/certverifier.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/v2/remotesigner/remotesigner.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/v2/s2av2.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/internal/v2/tlsconfigstore/tlsconfigstore.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/retry/retry.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/s2a.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/s2a_options.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/s2a_utils.go is excluded by !vendor/**
  • vendor/github.com/google/s2a-go/stream/s2a_stream.go is excluded by !vendor/**
  • vendor/github.com/googleapis/enterprise-certificate-proxy/LICENSE is excluded by !vendor/**
  • vendor/github.com/googleapis/enterprise-certificate-proxy/client/client.go is excluded by !vendor/**
  • vendor/github.com/googleapis/enterprise-certificate-proxy/client/util/util.go is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/.release-please-manifest.json is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/CHANGES.md is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/LICENSE is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/apierror/apierror.go is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/README.md is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/custom_error.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/custom_error.proto is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/error.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/apierror/internal/proto/error.proto is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/call_option.go is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/callctx/callctx.go is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/content_type.go is excluded by !vendor/**
  • vendor/github.com/googleapis/gax-go/v2/gax.go is excluded by !vendor/**
📒 Files selected for processing (4)
  • go.mod (5 hunks)
  • pkg/addonmanager/addontesting/helpers.go (1 hunks)
  • pkg/addonmanager/cloudevents/manager.go (2 hunks)
  • test/integration/cloudevents/suite_test.go (0 hunks)
💤 Files with no reviewable changes (1)
  • test/integration/cloudevents/suite_test.go
🚧 Files skipped from review as they are similar to previous changes (1)
  • pkg/addonmanager/addontesting/helpers.go
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (8)
  • GitHub Check: e2e
  • GitHub Check: cloudevents-integration
  • GitHub Check: integration
  • GitHub Check: e2e-hosted
  • GitHub Check: unit
  • GitHub Check: e2e-cloudevents
  • GitHub Check: build
  • GitHub Check: verify
🔇 Additional comments (4)
pkg/addonmanager/cloudevents/manager.go (2)

65-66: LGTM!

The usage correctly reflects the updated import path. The function call structure and arguments remain unchanged, maintaining the same behavior.


30-30: I'll help you verify the SDK upgrade compatibility for this import change. Let me investigate the codebase and the SDK migration.
<function_calls>

#!/bin/bash

First, let's examine the file to see how the imported builder is used

cat -n pkg/addonmanager/cloudevents/manager.go | head -60


</function_calls>

Now let me search for actual usage of the builder in the file:
<function_calls>

#!/bin/bash

Search for builder usage in the manager.go file

rg -n "builder." pkg/addonmanager/cloudevents/manager.go -A 2 -B 2


</function_calls>

Let me also check what was in the file before this import change to understand the migration:
<function_calls>

#!/bin/bash

Check git history to see what changed

git log --oneline -20 pkg/addonmanager/cloudevents/manager.go


</function_calls>

Now let me search for the SDK repository information:
<function_calls>

open-cluster-management.io/sdk-go c7d6056a7936 builder NewConfigLoader migration

</function_calls>

Let me also check the go.mod to see the SDK version:
<function_calls>

#!/bin/bash

Check go.mod for SDK version

rg "open-cluster-management.io/sdk-go" go.mod -A 1 -B 1


</function_calls>

go.mod (2)

31-148: Based on my analysis, I've identified several issues with the review comment:

  1. Misleading verification commands: go mod verify checks for cache tampering, not dependency conflicts. go mod tidy -v is maintenance, not verification of proper resolution.

  2. Contradictory tags: The comment includes both and, which are contradictory directives.

  3. Missing context: The comment doesn't explain why these updates matter or what specific testing is needed beyond generic recommendations.

  4. Correct framing of updates: The indirect dependency updates are routine transitive updates from upgrading dependencies like Kubernetes and controller-runtime. OpenTelemetry v1.34.0 → v1.37.0 is a minor version bump with documented changes (no breaking changes noted).

Here is the rewritten review comment:


Acknowledge extensive indirect dependency updates; no concerns identified with dependency versions.

The indirect dependency updates are expected given the major dependency upgrades (Kubernetes, controller-runtime). The versions specified (OpenTelemetry v1.37.0, gRPC v1.76.0, Google Cloud libraries, golang.org/x/* packages) are stable releases.

Ensure comprehensive testing covers the updated dependency graph to catch any runtime integration issues, particularly with:

  • OpenTelemetry instrumentation and exporters
  • gRPC/protobuf interactions
  • Google Cloud client libraries

17-27: Based on my verification research, I've gathered information about the dependency upgrades but encountered repository access limitations. Here are my findings:

Verified Information:

  • controller-runtime v0.22.3: Contains only a bugfix release (SSA support), with no breaking changes
  • Kubernetes v1.34.1 (corresponding to k8s.io packages v0.34.1): The notable breaking changes are infrastructure-level:
    • CRI-O now enforces fully-qualified image names (not short/unqualified names)
    • CoreDNS metrics generation behavior changed (enhanced metrics by default)
  • Security status: No new Kubernetes-specific CVEs in v1.34.1; most runtime-level issues are in container runtime dependencies (containerd/runc)
  • Versions are stable: Both v0.34.1 and v0.22.3 are recent stable releases with no known public security advisories

However, I was unable to access the repository to verify whether the actual code changes in manager.go and TestingEventRecorder correspond to addressing known breaking changes, or if they represent unrelated refactoring.


Dependency upgrades appear stable with no critical security issues. Kubernetes v1.34.1 introduces infrastructure-level breaking changes (CRI-O image naming, CoreDNS metrics) rather than API-level breaking changes. controller-runtime v0.22.3 contains only bugfixes. The version choices are reasonable, though code-level verification of the adaptations could not be completed due to repository access limitations.

Tip

📝 Customizable high-level summaries are now available in beta!

You can now customize how CodeRabbit generates the high-level summary in your pull requests — including its content, structure, tone, and formatting.

  • Provide your own instructions using the high_level_summary_instructions setting.
  • Format the summary however you like (bullet lists, tables, multi-section layouts, contributor stats, etc.).
  • Use high_level_summary_in_walkthrough to move the summary from the description to the walkthrough section.

Example instruction:

"Divide the high-level summary into five sections:

  1. 📝 Description — Summarize the main change in 50–60 words, explaining what was done.
  2. 📓 References — List relevant issues, discussions, documentation, or related PRs.
  3. 📦 Dependencies & Requirements — Mention any new/updated dependencies, environment variable changes, or configuration updates.
  4. 📊 Contributor Summary — Include a Markdown table showing contributions:
    | Contributor | Lines Added | Lines Removed | Files Changed |
  5. ✔️ Additional Notes — Add any extra reviewer context.
    Keep each section concise (under 200 words) and use bullet or numbered lists for clarity."

Note: This feature is currently in beta for Pro-tier users, and pricing will be announced later.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 25, 2025

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: qiujian16

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

- Upgrade k8s.io libraries from v0.33.3 to v0.34.1
  - k8s.io/api, k8s.io/apiextensions-apiserver, k8s.io/apimachinery
  - k8s.io/apiserver, k8s.io/client-go, k8s.io/component-base
- Upgrade controller-runtime from v0.20.2 to v0.22.3
- Upgrade open-cluster-management.io/api to latest commit 2337d27c3b7f
- Upgrade open-cluster-management.io/sdk-go to latest commit c7d6056a7936

Code changes to adapt to API updates:
- Update cloudevents manager to use new builder.NewConfigLoader() path
- Update TestingEventRecorder methods to accept context.Context parameter
  to match updated events.Recorder interface

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <[email protected]>
Signed-off-by: Jian Qiu <[email protected]>
@qiujian16 qiujian16 force-pushed the upgrade-dependencies branch from b69bd95 to 04fb851 Compare November 26, 2025 01:42
@zhiweiyin318
Copy link
Member

/lgtm

@openshift-ci openshift-ci bot added the lgtm label Nov 26, 2025
@openshift-merge-bot openshift-merge-bot bot merged commit 1a0a9be into open-cluster-management-io:main Nov 26, 2025
16 checks passed
@qiujian16 qiujian16 deleted the upgrade-dependencies branch November 26, 2025 02:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants