Skip to content

Conversation

@qiujian16
Copy link
Member

@qiujian16 qiujian16 commented Nov 20, 2025

This commit updates:

  • k8s.io/api, k8s.io/apimachinery, k8s.io/client-go, k8s.io/code-generator, k8s.io/component-base: 0.33.1 -> 0.34.1
  • sigs.k8s.io/controller-runtime: 0.20.2 -> 0.22.3

Also ran 'make update' to regenerate code and update CRDs accordingly.

Summary

Related issue(s)

Fixes #

Summary by CodeRabbit

  • Chores

    • Updated multiple dependencies to newer versions including Kubernetes modules, controller-runtime, and related libraries.
  • Documentation

    • Clarified DynamicResourceAllocation feature gate references in resource configuration specifications.

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

This commit updates:
- k8s.io/api, k8s.io/apimachinery, k8s.io/client-go, k8s.io/code-generator, k8s.io/component-base: 0.33.1 -> 0.34.1
- sigs.k8s.io/controller-runtime: 0.20.2 -> 0.22.3

Also ran 'make update' to regenerate code and update CRDs accordingly.

Signed-off-by: Jian Qiu <[email protected]>
@openshift-ci openshift-ci bot requested review from deads2k and jnpacker November 20, 2025 14:06
@openshift-ci
Copy link
Contributor

openshift-ci bot commented Nov 20, 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

@coderabbitai
Copy link

coderabbitai bot commented Nov 20, 2025

Walkthrough

This PR updates CRD field descriptions across three manifest files to replace alpha field language with dependency language for the DynamicResourceAllocation feature gate, and upgrades dependency versions in go.mod to newer patch and minor releases.

Changes

Cohort / File(s) Summary
CRD field description updates
addon/v1alpha1/0000_02_addon.open-cluster-management.io_addondeploymentconfigs.crd.yaml, operator/v1/0000_00_operator.open-cluster-management.io_klusterlets.crd.yaml, operator/v1/0000_01_operator.open-cluster-management.io_clustermanagers.crd.yaml
Standardized description text for spec.resourceRequirements.claims fields. Replaced "This is an alpha field and requires enabling the" with "This field depends on the" to reference the DynamicResourceAllocation feature gate. No changes to validation logic or constraints.
Go module dependencies
go.mod
Updated multiple direct and indirect dependencies: pflag (v1.0.5 → v1.0.6), Kubernetes modules (v0.33.1 → v0.34.1), controller-runtime (v0.20.2 → v0.22.3), go-restful, fsnotify, cbor, gnostic-models, reflect2, OpenTelemetry, and YAML libraries. No new public API changes.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • CRD changes follow an identical repetitive pattern across three files with straightforward text replacements
  • go.mod contains routine version bumps with no apparent breaking changes
  • Specific areas for attention:
    • Verify dependency compatibility between Kubernetes v0.34.1 bump and controller-runtime v0.22.3
    • Confirm indirect dependency updates (particularly OpenTelemetry and YAML libraries) don't introduce incompatibilities

Suggested labels

lgtm

Suggested reviewers

  • mdelder
  • deads2k

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the main changes: upgrading k8s.io libraries to 0.34.1 and controller-runtime to 0.22.3, with appropriate 🌱 emoji for misc/other changes.
Description check ✅ Passed The description provides the specific version upgrades and mentions running 'make update' for regeneration, but lacks a Summary section and Related issue(s) details as specified in the template.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 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 3e1bb92 and d53ed5d.

⛔ Files ignored due to path filters (296)
  • go.sum is excluded by !**/*.sum
  • 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/.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/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/modern-go/reflect2/safe_type.go is excluded by !vendor/**
  • vendor/github.com/spf13/pflag/.editorconfig is excluded by !vendor/**
  • vendor/github.com/spf13/pflag/.golangci.yaml is excluded by !vendor/**
  • vendor/github.com/spf13/pflag/flag.go is excluded by !vendor/**
  • vendor/github.com/spf13/pflag/ip.go is excluded by !vendor/**
  • vendor/github.com/spf13/pflag/ipnet_slice.go is excluded by !vendor/**
  • vendor/github.com/spf13/pflag/string_array.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/semconv/v1.26.0/README.md is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/semconv/v1.26.0/attribute_group.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/semconv/v1.26.0/doc.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/semconv/v1.26.0/exception.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/semconv/v1.26.0/metric.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/semconv/v1.26.0/schema.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/auto.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/attr.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/doc.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/id.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/number.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/resource.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/scope.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/span.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/status.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/traces.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/internal/telemetry/value.go is excluded by !vendor/**
  • vendor/go.opentelemetry.io/otel/trace/noop.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/.travis.yml is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/LICENSE is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/LICENSE.libyaml is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/NOTICE is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/README.md is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/apic.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/decode.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/emitterc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/encode.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/parserc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/readerc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/resolve.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/scannerc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/sorter.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/writerc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/yaml.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/yamlh.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v2/yamlprivateh.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/LICENSE is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/NOTICE is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/README.md is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/apic.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/decode.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/emitterc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/encode.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/parserc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/readerc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/resolve.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/scannerc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/sorter.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/writerc.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/yaml.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/yamlh.go is excluded by !vendor/**
  • vendor/go.yaml.in/yaml/v3/yamlprivateh.go is excluded by !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/register.go is excluded by !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/admissionregistration/v1beta1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1beta1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1beta1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1beta2/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1beta2/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/apps/v1beta2/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/authorization/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/authorization/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/authorization/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/autoscaling/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/autoscaling/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/batch/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/batch/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/batch/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/register.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1alpha1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1beta1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/certificates/v1beta1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/core/v1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/core/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/core/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/core/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/core/v1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/extensions/v1beta1/doc.go is excluded by !vendor/**
  • vendor/k8s.io/api/extensions/v1beta1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/extensions/v1beta1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/extensions/v1beta1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/extensions/v1beta1/zz_generated.validations.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/well_known_labels.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/networking/v1alpha1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/devicetaint.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/doc.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/resource/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/register.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/devicetaint.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/register.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1alpha3/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/resource/v1beta1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta2/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/resource/v1beta2/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta2/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta2/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/resource/v1beta2/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/api/storage/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1/register.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1alpha1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1alpha1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1beta1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1beta1/types.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1beta1/types_swagger_doc_generated.go is excluded by !vendor/**
  • vendor/k8s.io/api/storage/v1beta1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/doc.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1/conversion.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1/defaults.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1/doc.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/conversion.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/defaults.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/doc.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/client/applyconfiguration/apiextensions/v1/customresourcedefinition.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/client/applyconfiguration/apiextensions/v1beta1/customresourcedefinition.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/typed/apiextensions/v1/apiextensions_client.go is excluded by !vendor/**
  • vendor/k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset/typed/apiextensions/v1beta1/apiextensions_client.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/errors/errors.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/operation/operation.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/safe/safe.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/README.md is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/common.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/constraints/constraints.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/content/errors.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/doc.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/each.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/enum.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/equality.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/immutable.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/item.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/limits.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/required.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/subfield.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/testing.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/union.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validate/zeroorone.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/api/validation/objectmeta.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/meta/internalversion/validation/validation.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/meta/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/meta/v1/validation/validation.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/register.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/types.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/doc.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/generated.pb.go is excluded by !**/*.pb.go, !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/generated.proto is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/register.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/types.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/zz_generated.conversion.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/v1/zz_generated.prerelease-lifecycle.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/apis/testapigroup/zz_generated.deepcopy.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/labels/labels.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/labels/selector.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/converter.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/interfaces.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/scheme.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/serializer/cbor/cbor.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/serializer/cbor/direct/direct.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/serializer/cbor/internal/modes/custom.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/serializer/cbor/internal/modes/decode.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/serializer/cbor/internal/modes/encode.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/runtime/serializer/cbor/internal/modes/transcoding.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/diff/cmp.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/diff/diff.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/diff/legacy_diff.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/errors/errors.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/extract.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/fieldmanager.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/gvkparser.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/capmanagers.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/conflict.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/fieldmanager.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/fields.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/lastappliedmanager.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/managedfields.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/managedfieldsupdater.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/manager.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/pathelement.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/runtimetypeconverter.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/skipnonapplied.go is excluded by !vendor/**
  • vendor/k8s.io/apimachinery/pkg/util/managedfields/internal/stripmeta.go is excluded by !vendor/**
📒 Files selected for processing (4)
  • addon/v1alpha1/0000_02_addon.open-cluster-management.io_addondeploymentconfigs.crd.yaml (1 hunks)
  • go.mod (3 hunks)
  • operator/v1/0000_00_operator.open-cluster-management.io_klusterlets.crd.yaml (1 hunks)
  • operator/v1/0000_01_operator.open-cluster-management.io_clustermanagers.crd.yaml (1 hunks)
🧰 Additional context used
🧠 Learnings (1)
📚 Learning: 2025-09-02T11:59:50.703Z
Learnt from: qiujian16
Repo: open-cluster-management-io/api PR: 392
File: operator/v1/types_clustermanager.go:178-195
Timestamp: 2025-09-02T11:59:50.703Z
Learning: XValidation markers in kubebuilder require Kubernetes 1.25+ and should not be added to the open-cluster-management-io/api project until minimum Kubernetes version requirements are established to avoid breaking compatibility with older clusters.

Applied to files:

  • operator/v1/0000_01_operator.open-cluster-management.io_clustermanagers.crd.yaml
⏰ 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). (1)
  • GitHub Check: verify
🔇 Additional comments (4)
operator/v1/0000_01_operator.open-cluster-management.io_clustermanagers.crd.yaml (1)

497-498: Verify DynamicResourceAllocation description aligns with feature gate status.

The description change from "alpha field" to "depends on the DynamicResourceAllocation feature gate" appears consistently across all three CRD files in this PR. Confirm this wording accurately reflects Kubernetes' current stance on the feature gate (e.g., whether it remains experimental or has moved to stable) and matches upstream Kubernetes API documentation.

go.mod (3)

13-19: Version combination is supported.

Controller-runtime v0.22.3 targets k8s.io/* v0.34.1 and is compatible with Kubernetes v0.34.1. The jump from v0.20.2 to v0.22.3 is expected and properly tested across this release series. No breaking changes or special requirements apply to this upgrade.


53-54: The mixed yaml module imports are expected and legitimate.

The go.yaml.in/yaml modules (v2/v3) are the maintained, canonical replacement for gopkg.in/yaml—they share the same API and are drop-in replacements. These represent a maintenance transition: different transitive dependencies in your go.mod haven't yet updated to exclusively use the new canonical path.

All three yaml-related entries (go.yaml.in/yaml/{v2,v3}, gopkg.in/yaml.v3, and sigs.k8s.io/yaml) are marked as // indirect, meaning they're pulled in by your actual direct dependencies, not imported directly in your code. Since they're from the same maintained upstream project with compatible APIs, there are no runtime conflicts or import path issues.

No action required—this pattern will naturally resolve as your dependencies migrate to the canonical go.yaml.in/yaml paths over time.


70-72: ---

Pseudo-version pinning is standard practice for k8s.io modules—no stable releases exist.

The k8s.io/gengo/v2, k8s.io/kube-openapi, and k8s.io/utils modules do not publish stable semver releases and are typically consumed as Go module pseudo-versions (commit-based). Using pseudo-versions for these dependencies is correct and necessary, not a deviation. No action needed.

Likely an incorrect or invalid review comment.


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.

@elgnay
Copy link
Contributor

elgnay commented Nov 24, 2025

/lgtm

@openshift-ci openshift-ci bot added the lgtm label Nov 24, 2025
@openshift-merge-bot openshift-merge-bot bot merged commit 2337d27 into open-cluster-management-io:main Nov 24, 2025
12 checks passed
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