Skip to content

Conversation

@sebrandon1
Copy link
Member

@sebrandon1 sebrandon1 commented Jan 5, 2026

Summary

  • Add k8s and openshift groups to consolidate related package updates into single PRs
  • Groups k8s.io/* and sigs.k8s.io/* packages together for coordinated updates
  • Groups github.com/openshift/* packages together
  • Updates existing go-dependencies group to exclude the above patterns

This reduces PR noise and makes dependency updates easier to review.

Related PRs

This change is part of a coordinated effort across multiple OpenShift repositories:

Tracked by: CNFCERT-1301

Test plan

  • Verify dependabot.yml syntax is valid
  • Wait for next dependabot run to confirm groups are applied correctly

🤖 Generated with Claude Code

sebrandon1 and others added 3 commits December 2, 2025 10:44
With Go 1.24 now in use, upgrade to the latest stable version of
go.uber.org/mock (v0.6.0) which includes improvements and bug fixes.

Updated:
- go.mod: bump go.uber.org/mock to v0.6.0
- hack/setup_env.sh: install mockgen@v0.6.0
- ci-images/Dockerfile.code-generation: use mockgen@v0.6.0
- vendor/: update vendored mock library
Add k8s and openshift groups to consolidate related package updates:
- k8s: Groups k8s.io/* and sigs.k8s.io/* packages
- openshift: Groups github.com/openshift/* packages
- go-dependencies: Updated to exclude the above patterns

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
@openshift-merge-robot openshift-merge-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 5, 2026
@openshift-merge-robot
Copy link

PR needs rebase.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@coderabbitai
Copy link

coderabbitai bot commented Jan 5, 2026

Walkthrough

This pull request migrates the codebase from golang/mock to go.uber.org/mock by updating mock framework dependencies, replacing gomock import paths across test and mock files, updating build/dependency configuration files, expanding test coverage, and removing obsolete generated mock files.

Changes

Cohort / File(s) Summary
Dependency Configuration
.github/dependabot.yml, go.mod, ci-images/Dockerfile.code-generation, hack/setup_env.sh
Replaces golang/mock v1.6.0 with go.uber.org/mock v0.6.0; adds k8s and openshift dependency groups to dependabot config; updates mockgen tool installation paths.
Mock Framework Import Migration – Test Files
internal/bminventory/inventory_test.go, internal/cluster/cluster_test.go, internal/cluster/common_test.go, internal/cluster/progress_test.go, internal/cluster/refresh_status_preprocessor_test.go, internal/cluster/transition_test.go, internal/cluster/validator_test.go, internal/connectivity/mock_connectivity_validator.go, internal/controller/controllers/*_test.go (12+ files), internal/dns/dns_test.go, internal/events/event_test.go, internal/hardware/validator_test.go, internal/host/*_test.go (9+ files), internal/ignition/*_test.go (3 files), internal/infraenv/infraenv_test.go, internal/installcfg/builder/builder_test.go, internal/installercache/installercache_test.go, internal/manifests/manifests_test.go, internal/metrics/*_test.go (3 files), internal/network/manifests_generator_test.go
Updates gomock import path from github.com/golang/mock/gomock to go.uber.org/mock/gomock across ~40 test files.
Mock Framework Import Migration – Mock Files
internal/bminventory/mock_crd_utils.go, internal/bminventory/mock_installer_internal.go, internal/cluster/mock_cluster_api.go, internal/cluster/mock_transition.go, internal/cluster/validations/mock_pull_secret_validation.go, internal/common/testing/dummies.go, internal/common/testing/matchers.go, internal/controller/controllers/mock_*.go (6 files), internal/dns/mock_dns.go, internal/events/api/mock_event.go, internal/hardware/mock_validator.go, internal/host/hostcommands/mock_instruction_api.go, internal/host/mock_*.go (3 files), internal/ignition/mock_ignition_builder.go, internal/infraenv/mock_infraenv_api.go, internal/installcfg/builder/mock_installcfg.go, internal/installercache/mock_installercache.go, internal/manifests/api/mock_*.go (2 files), internal/metrics/mock_*.go (3 files)
Updates gomock import path from github.com/golang/mock/gomock to go.uber.org/mock/gomock across ~30 generated and hand-written mock files.
Test Coverage Expansion
internal/bminventory/inventory_test.go
Adds extensive test coverage for cluster registration, dual-stack IPv4/IPv6 network configurations, network validation, platform constraints, feature flags, and ignition/static network configuration handling.
Type Definition Formatting
api/v1beta1/agentserviceconfig_types.go, api/v1beta1/infraenv_types.go
Adjusts field alignment and removes trailing blank lines in const/struct definitions; no semantic changes.
Removed Files
internal/controller/controllers/gomock_reflect_2837856844/prog.go, internal/dns/mock_dns_vendor.go
Deletes generated mockgen reflection tool and obsolete generated mock file for DNSProvider.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

✨ Finishing touches
  • 📝 Generate docstrings

📜 Recent review details

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Cache: Disabled due to data retention organization setting

Knowledge base: Disabled due to Reviews -> Disable Knowledge Base setting

📥 Commits

Reviewing files that changed from the base of the PR and between 3ca3b66 and c38f415.

⛔ Files ignored due to path filters (215)
  • api/vendor/github.com/asaskevich/govalidator/types.go is excluded by !**/vendor/**
  • api/vendor/github.com/asaskevich/govalidator/validator.go is excluded by !**/vendor/**
  • api/vendor/github.com/beorn7/perks/quantile/stream.go is excluded by !**/vendor/**
  • api/vendor/github.com/davecgh/go-spew/spew/bypass.go is excluded by !**/vendor/**
  • api/vendor/github.com/davecgh/go-spew/spew/bypasssafe.go is excluded by !**/vendor/**
  • api/vendor/github.com/davecgh/go-spew/spew/config.go is excluded by !**/vendor/**
  • api/vendor/github.com/davecgh/go-spew/spew/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/davecgh/go-spew/spew/dump.go is excluded by !**/vendor/**
  • api/vendor/github.com/emicklei/go-restful/v3/curly.go is excluded by !**/vendor/**
  • api/vendor/github.com/emicklei/go-restful/v3/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/emicklei/go-restful/v3/json.go is excluded by !**/vendor/**
  • api/vendor/github.com/emicklei/go-restful/v3/jsoniter.go is excluded by !**/vendor/**
  • api/vendor/github.com/emicklei/go-restful/v3/response.go is excluded by !**/vendor/**
  • api/vendor/github.com/emicklei/go-restful/v3/web_service.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/analysis/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/analysis/flatten.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/analysis/internal/flatten/replace/replace.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/analysis/schema.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/loads/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/loads/loaders.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/spec/bindata.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/spec/expander.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/spec/parameter.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/strfmt/ulid.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/validate/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/validate/example_validator.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/validate/spec.go is excluded by !**/vendor/**
  • api/vendor/github.com/go-openapi/validate/spec_messages.go is excluded by !**/vendor/**
  • api/vendor/github.com/gogo/protobuf/proto/lib.go is excluded by !**/vendor/**
  • api/vendor/github.com/gogo/protobuf/proto/pointer_reflect.go is excluded by !**/vendor/**
  • api/vendor/github.com/gogo/protobuf/proto/pointer_reflect_gogo.go is excluded by !**/vendor/**
  • api/vendor/github.com/gogo/protobuf/proto/pointer_unsafe.go is excluded by !**/vendor/**
  • api/vendor/github.com/gogo/protobuf/proto/pointer_unsafe_gogo.go is excluded by !**/vendor/**
  • api/vendor/github.com/gogo/protobuf/proto/table_unmarshal.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/gnostic-models/jsonschema/base.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/gofuzz/fuzz.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/uuid/dce.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/uuid/hash.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/uuid/node_js.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/uuid/node_net.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/uuid/null.go is excluded by !**/vendor/**
  • api/vendor/github.com/google/uuid/version4.go is excluded by !**/vendor/**
  • api/vendor/github.com/imdario/mergo/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/itchyny/gojq/builtin.go is excluded by !**/vendor/**
  • api/vendor/github.com/itchyny/gojq/compare.go is excluded by !**/vendor/**
  • api/vendor/github.com/itchyny/gojq/module_loader.go is excluded by !**/vendor/**
  • api/vendor/github.com/jinzhu/inflection/inflections.go is excluded by !**/vendor/**
  • api/vendor/github.com/jinzhu/now/main.go is excluded by !**/vendor/**
  • api/vendor/github.com/jinzhu/now/now.go is excluded by !**/vendor/**
  • api/vendor/github.com/json-iterator/go/iter_float.go is excluded by !**/vendor/**
  • api/vendor/github.com/json-iterator/go/iter_skip_sloppy.go is excluded by !**/vendor/**
  • api/vendor/github.com/json-iterator/go/iter_skip_strict.go is excluded by !**/vendor/**
  • api/vendor/github.com/lib/pq/array.go is excluded by !**/vendor/**
  • api/vendor/github.com/lib/pq/doc.go is excluded by !**/vendor/**
  • api/vendor/github.com/lib/pq/notify.go is excluded by !**/vendor/**
  • api/vendor/github.com/lib/pq/scram/scram.go is excluded by !**/vendor/**
  • api/vendor/github.com/mailru/easyjson/jlexer/bytestostr.go is excluded by !**/vendor/**
  • api/vendor/github.com/mailru/easyjson/jlexer/bytestostr_nounsafe.go is excluded by !**/vendor/**
  • api/vendor/github.com/mitchellh/mapstructure/mapstructure.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/concurrent/go_above_19.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/concurrent/go_below_19.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/concurrent/log.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/concurrent/unbounded_executor.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/reflect2/go_above_118.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/reflect2/go_above_19.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/reflect2/go_below_118.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/reflect2/reflect2.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/reflect2/type_map.go is excluded by !**/vendor/**
  • api/vendor/github.com/modern-go/reflect2/unsafe_link.go is excluded by !**/vendor/**
  • api/vendor/github.com/nxadm/tail/tail.go is excluded by !**/vendor/**
  • api/vendor/github.com/nxadm/tail/tail_posix.go is excluded by !**/vendor/**
  • api/vendor/github.com/nxadm/tail/tail_windows.go is excluded by !**/vendor/**
  • api/vendor/github.com/nxadm/tail/watch/inotify.go is excluded by !**/vendor/**
  • api/vendor/github.com/nxadm/tail/watch/inotify_tracker.go is excluded by !**/vendor/**
  • api/vendor/github.com/nxadm/tail/winfile/winfile.go is excluded by !**/vendor/**
  • api/vendor/github.com/oklog/ulid/ulid.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/ginkgo_dsl.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/internal/remote/aggregator.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/internal/remote/forwarding_reporter.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/internal/remote/output_interceptor_unix.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/internal/remote/output_interceptor_win.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/internal/remote/server.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/fake_reporter.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/junit_reporter.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/stenographer/support/go-colorable/colorable_others.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/stenographer/support/go-isatty/isatty_appengine.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/stenographer/support/go-isatty/isatty_bsd.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/stenographer/support/go-isatty/isatty_linux.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/stenographer/support/go-isatty/isatty_solaris.go is excluded by !**/vendor/**
  • api/vendor/github.com/onsi/ginkgo/reporters/stenographer/support/go-isatty/isatty_windows.go is excluded by !**/vendor/**
  • api/vendor/github.com/openshift/api/config/v1/types_cluster_version.go is excluded by !**/vendor/**
  • api/vendor/github.com/openshift/api/config/v1/types_tlssecurityprofile.go is excluded by !**/vendor/**
  • api/vendor/github.com/openshift/custom-resource-status/conditions/v1/zz_generated.deepcopy.go is excluded by !**/vendor/**
  • api/vendor/github.com/pkg/errors/errors.go is excluded by !**/vendor/**
  • api/vendor/github.com/pkg/errors/go113.go is excluded by !**/vendor/**
  • api/vendor/github.com/pkg/errors/stack.go is excluded by !**/vendor/**
  • api/vendor/github.com/spf13/pflag/flag.go is excluded by !**/vendor/**
  • api/vendor/github.com/spf13/pflag/string_slice.go is excluded by !**/vendor/**
  • api/vendor/github.com/thoas/go-funk/builder.go is excluded by !**/vendor/**
  • api/vendor/github.com/thoas/go-funk/subset.go is excluded by !**/vendor/**
  • api/vendor/github.com/thoas/go-funk/utils.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/bson.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/bsoncodec/doc.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/bsoncodec/registry.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/bsoncodec/struct_tag_parser.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/doc.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/primitive/decimal.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/bson/primitive/primitive.go is excluded by !**/vendor/**
  • api/vendor/go.mongodb.org/mongo-driver/x/bsonx/bsoncore/document_sequence.go is excluded by !**/vendor/**
  • api/vendor/golang.org/x/sys/unix/syscall_zos_s390x.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/api.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/api_classic.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/identity_classic.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/identity_flex.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/identity_vm.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/main.go is excluded by !**/vendor/**
  • api/vendor/google.golang.org/appengine/internal/main_vm.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/inf.v0/dec.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/inf.v0/rounder.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/tomb.v1/tomb.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/apic.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/emitterc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/parserc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/readerc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/resolve.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/scannerc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/sorter.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/yaml.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v2/yamlh.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/apic.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/emitterc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/parserc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/readerc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/scannerc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/writerc.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/yaml.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/yamlh.go is excluded by !**/vendor/**
  • api/vendor/gopkg.in/yaml.v3/yamlprivateh.go is excluded by !**/vendor/**
  • api/vendor/gorm.io/gorm/model.go is excluded by !**/vendor/**
  • api/vendor/gorm.io/gorm/schema/relationship.go is excluded by !**/vendor/**
  • api/vendor/k8s.io/apimachinery/third_party/forked/golang/json/fields.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/controller-runtime/pkg/internal/flock/flock_other.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/apic.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/emitterc.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/parserc.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/readerc.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/resolve.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/scannerc.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/sorter.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/yaml.go is excluded by !**/vendor/**
  • api/vendor/sigs.k8s.io/yaml/goyaml.v2/yamlh.go is excluded by !**/vendor/**
  • client/vendor/github.com/asaskevich/govalidator/types.go is excluded by !**/vendor/**
  • client/vendor/github.com/asaskevich/govalidator/validator.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/analysis/doc.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/analysis/flatten.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/analysis/internal/flatten/replace/replace.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/analysis/schema.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/jsonreference/internal/normalize_url.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/loads/doc.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/loads/loaders.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/denco/router.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/doc.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/go18.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/pre_go18.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/rapidoc.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/redoc.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/runtime/middleware/spec.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/spec/bindata.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/spec/expander.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/spec/parameter.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/strfmt/ulid.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/validate/doc.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/validate/example_validator.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/validate/spec.go is excluded by !**/vendor/**
  • client/vendor/github.com/go-openapi/validate/spec_messages.go is excluded by !**/vendor/**
  • client/vendor/github.com/jinzhu/inflection/inflections.go is excluded by !**/vendor/**
  • client/vendor/github.com/jinzhu/now/main.go is excluded by !**/vendor/**
  • client/vendor/github.com/jinzhu/now/now.go is excluded by !**/vendor/**
  • client/vendor/github.com/lib/pq/array.go is excluded by !**/vendor/**
  • client/vendor/github.com/lib/pq/doc.go is excluded by !**/vendor/**
  • client/vendor/github.com/lib/pq/notify.go is excluded by !**/vendor/**
  • client/vendor/github.com/lib/pq/scram/scram.go is excluded by !**/vendor/**
  • client/vendor/github.com/mailru/easyjson/jlexer/bytestostr.go is excluded by !**/vendor/**
  • client/vendor/github.com/mailru/easyjson/jlexer/bytestostr_nounsafe.go is excluded by !**/vendor/**
  • client/vendor/github.com/mitchellh/mapstructure/mapstructure.go is excluded by !**/vendor/**
  • client/vendor/github.com/oklog/ulid/ulid.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/bson.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/bsoncodec/doc.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/bsoncodec/registry.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/bsoncodec/struct_tag_parser.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/doc.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/primitive/decimal.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/bson/primitive/primitive.go is excluded by !**/vendor/**
  • client/vendor/go.mongodb.org/mongo-driver/x/bsonx/bsoncore/document_sequence.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/apic.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/emitterc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/parserc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/readerc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/resolve.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/scannerc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/sorter.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/yaml.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v2/yamlh.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/apic.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/emitterc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/parserc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/readerc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/scannerc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/writerc.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/yaml.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/yamlh.go is excluded by !**/vendor/**
  • client/vendor/gopkg.in/yaml.v3/yamlprivateh.go is excluded by !**/vendor/**
  • client/vendor/gorm.io/gorm/model.go is excluded by !**/vendor/**
  • client/vendor/gorm.io/gorm/schema/relationship.go is excluded by !**/vendor/**
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (85)
  • .github/dependabot.yml
  • api/v1beta1/agentserviceconfig_types.go
  • api/v1beta1/infraenv_types.go
  • ci-images/Dockerfile.code-generation
  • cmd/graphstatemachine/main.go
  • go.mod
  • hack/setup_env.sh
  • internal/bminventory/inventory_test.go
  • internal/bminventory/mock_crd_utils.go
  • internal/bminventory/mock_installer_internal.go
  • internal/cluster/cluster_test.go
  • internal/cluster/common_test.go
  • internal/cluster/mock_cluster_api.go
  • internal/cluster/mock_transition.go
  • internal/cluster/progress_test.go
  • internal/cluster/refresh_status_preprocessor_test.go
  • internal/cluster/transition_test.go
  • internal/cluster/validations/mock_pull_secret_validation.go
  • internal/cluster/validator_test.go
  • internal/common/events/events.go
  • internal/common/testing/dummies.go
  • internal/common/testing/matchers.go
  • internal/connectivity/mock_connectivity_validator.go
  • internal/controller/controllers/agent_controller_test.go
  • internal/controller/controllers/agentclassification_controller_test.go
  • internal/controller/controllers/agentclusterinstall_controller_test.go
  • internal/controller/controllers/agentlabel_controller_test.go
  • internal/controller/controllers/bmh_agent_controller_test.go
  • internal/controller/controllers/bmo_utils_test.go
  • internal/controller/controllers/clusterdeployments_controller_test.go
  • internal/controller/controllers/controller_event_wrapper_test.go
  • internal/controller/controllers/crd_utils_test.go
  • internal/controller/controllers/gomock_reflect_2837856844/prog.go
  • internal/controller/controllers/hypershiftagentserviceconfig_controller_test.go
  • internal/controller/controllers/infraenv_controller_test.go
  • internal/controller/controllers/mock_bmo_utils.go
  • internal/controller/controllers/mock_crd_events_handler.go
  • internal/controller/controllers/mock_drainer.go
  • internal/controller/controllers/mock_k8s_client.go
  • internal/controller/controllers/mock_spoke_client_cache.go
  • internal/controller/controllers/mock_sub_resource_writer.go
  • internal/controller/controllers/preprovisioningimage_controller_test.go
  • internal/controller/controllers/spoke_client_cache_test.go
  • internal/dns/dns_test.go
  • internal/dns/mock_dns.go
  • internal/dns/mock_dns_vendor.go
  • internal/events/api/mock_event.go
  • internal/events/event_test.go
  • internal/hardware/mock_validator.go
  • internal/hardware/validator_test.go
  • internal/host/host_test.go
  • internal/host/hostcommands/connectivity_check_convertor_test.go
  • internal/host/hostcommands/container_image_availability_cmd_test.go
  • internal/host/hostcommands/disk_performance_cmd_test.go
  • internal/host/hostcommands/domain_name_resolution_cmd_test.go
  • internal/host/hostcommands/download_boot_artifacts_cmd_test.go
  • internal/host/hostcommands/install_cmd_test.go
  • internal/host/hostcommands/instruction_manager_test.go
  • internal/host/hostcommands/mock_instruction_api.go
  • internal/host/hostrole_test.go
  • internal/host/hostutil/update_host_test.go
  • internal/host/mock_host_api.go
  • internal/host/mock_transition.go
  • internal/host/monitor_test.go
  • internal/host/refresh_status_preprocessor_test.go
  • internal/host/transition_test.go
  • internal/host/validations_test.go
  • internal/ignition/disconnected_test.go
  • internal/ignition/discovery_test.go
  • internal/ignition/installmanifests_test.go
  • internal/ignition/mock_ignition_builder.go
  • internal/infraenv/infraenv_test.go
  • internal/infraenv/mock_infraenv_api.go
  • internal/installcfg/builder/builder_test.go
  • internal/installcfg/builder/mock_installcfg.go
  • internal/installercache/installercache_test.go
  • internal/installercache/mock_installercache.go
  • internal/manifests/api/mock_manifests_api.go
  • internal/manifests/api/mock_manifests_internal.go
  • internal/manifests/manifests_test.go
  • internal/metrics/directory_usage_collector_test.go
  • internal/metrics/metricsManager_test.go
  • internal/metrics/mock_disk_stats_helper.go
  • internal/metrics/mock_metrics_manager_api.go
  • internal/network/manifests_generator_test.go
💤 Files with no reviewable changes (2)
  • internal/controller/controllers/gomock_reflect_2837856844/prog.go
  • internal/dns/mock_dns_vendor.go
🧰 Additional context used
📓 Path-based instructions (1)
**

⚙️ CodeRabbit configuration file

-Focus on major issues impacting performance, readability, maintainability and security. Avoid nitpicks and avoid verbosity.

Files:

  • internal/host/hostutil/update_host_test.go
  • internal/hardware/validator_test.go
  • internal/controller/controllers/mock_drainer.go
  • internal/bminventory/inventory_test.go
  • internal/installcfg/builder/builder_test.go
  • internal/host/hostcommands/download_boot_artifacts_cmd_test.go
  • internal/controller/controllers/controller_event_wrapper_test.go
  • internal/host/hostcommands/container_image_availability_cmd_test.go
  • internal/events/event_test.go
  • internal/cluster/validator_test.go
  • internal/controller/controllers/agent_controller_test.go
  • internal/cluster/cluster_test.go
  • internal/controller/controllers/bmh_agent_controller_test.go
  • internal/infraenv/mock_infraenv_api.go
  • internal/network/manifests_generator_test.go
  • internal/host/monitor_test.go
  • internal/host/hostcommands/domain_name_resolution_cmd_test.go
  • internal/controller/controllers/mock_sub_resource_writer.go
  • internal/ignition/discovery_test.go
  • internal/controller/controllers/infraenv_controller_test.go
  • internal/ignition/installmanifests_test.go
  • internal/metrics/mock_metrics_manager_api.go
  • internal/common/testing/matchers.go
  • internal/cluster/mock_cluster_api.go
  • internal/cluster/refresh_status_preprocessor_test.go
  • internal/controller/controllers/preprovisioningimage_controller_test.go
  • internal/host/transition_test.go
  • internal/controller/controllers/hypershiftagentserviceconfig_controller_test.go
  • internal/host/hostcommands/mock_instruction_api.go
  • internal/metrics/mock_disk_stats_helper.go
  • internal/cluster/validations/mock_pull_secret_validation.go
  • internal/hardware/mock_validator.go
  • internal/host/hostcommands/instruction_manager_test.go
  • internal/manifests/manifests_test.go
  • internal/installercache/installercache_test.go
  • internal/ignition/mock_ignition_builder.go
  • internal/controller/controllers/crd_utils_test.go
  • cmd/graphstatemachine/main.go
  • internal/metrics/directory_usage_collector_test.go
  • internal/host/mock_transition.go
  • internal/host/hostcommands/connectivity_check_convertor_test.go
  • internal/controller/controllers/mock_bmo_utils.go
  • internal/host/mock_host_api.go
  • internal/connectivity/mock_connectivity_validator.go
  • internal/cluster/transition_test.go
  • internal/controller/controllers/agentlabel_controller_test.go
  • internal/dns/dns_test.go
  • internal/installcfg/builder/mock_installcfg.go
  • internal/host/hostcommands/disk_performance_cmd_test.go
  • internal/bminventory/mock_installer_internal.go
  • internal/controller/controllers/mock_crd_events_handler.go
  • internal/metrics/metricsManager_test.go
  • internal/ignition/disconnected_test.go
  • internal/cluster/common_test.go
  • internal/cluster/mock_transition.go
  • internal/host/validations_test.go
  • internal/host/hostrole_test.go
  • internal/dns/mock_dns.go
  • internal/controller/controllers/bmo_utils_test.go
  • internal/host/host_test.go
  • hack/setup_env.sh
  • internal/host/hostcommands/install_cmd_test.go
  • internal/host/refresh_status_preprocessor_test.go
  • internal/cluster/progress_test.go
  • internal/controller/controllers/agentclusterinstall_controller_test.go
  • internal/controller/controllers/mock_k8s_client.go
  • internal/controller/controllers/spoke_client_cache_test.go
  • internal/bminventory/mock_crd_utils.go
  • internal/controller/controllers/agentclassification_controller_test.go
  • internal/manifests/api/mock_manifests_internal.go
  • internal/infraenv/infraenv_test.go
  • internal/manifests/api/mock_manifests_api.go
  • internal/installercache/mock_installercache.go
  • internal/common/testing/dummies.go
  • api/v1beta1/infraenv_types.go
  • go.mod
  • internal/controller/controllers/clusterdeployments_controller_test.go
  • internal/controller/controllers/mock_spoke_client_cache.go
  • ci-images/Dockerfile.code-generation
  • api/v1beta1/agentserviceconfig_types.go
  • internal/events/api/mock_event.go
🔇 Additional comments (83)
internal/controller/controllers/mock_sub_resource_writer.go (1)

11-11: LGTM! Import path correctly updated for mock migration.

The gomock import path has been properly updated from github.com/golang/mock/gomock to go.uber.org/mock/gomock, which aligns with the PR's objective to migrate to go.uber.org/mock. Since this is a generated file, ensure that the mock generation command has been updated to use the new mockgen version.

internal/bminventory/mock_crd_utils.go (1)

13-13: LGTM! Import path correctly updated.

The gomock import path has been properly updated to use the actively maintained go.uber.org/mock fork. Since this is a generated file, the change reflects correct regeneration with the new mockgen tool.

internal/host/hostcommands/install_cmd_test.go (1)

26-26: LGTM! Clean migration to the maintained gomock fork.

The import path update from github.com/golang/mock/gomock to go.uber.org/mock/gomock is correct and necessary, as golang/mock is now archived. This is a drop-in replacement with no functional changes required.

internal/controller/controllers/controller_event_wrapper_test.go (1)

20-20: LGTM! Clean migration to go.uber.org/mock.

The import update correctly migrates from the deprecated github.com/golang/mock/gomock to go.uber.org/mock/gomock. All gomock usage patterns in the file remain compatible with the new library.

internal/connectivity/mock_connectivity_validator.go (1)

11-11: LGTM! Import path correctly updated for go.uber.org/mock migration.

The import path change from github.com/golang/mock/gomock to go.uber.org/mock/gomock is correct and aligns with the PR's migration objectives. Since this is an auto-generated file, the change reflects the updated mockgen tool usage.

internal/host/transition_test.go (1)

38-38: Import migration to go.uber.org/mock/gomock is correct

The new import path is compatible with all gomock API usage in this file (gomock.Controller, gomock.NewController(), gomock.Any(), gomock.EXPECT(), etc.). No legacy imports remain in the codebase.

internal/ignition/discovery_test.go (1)

32-32: LGTM: Consistent mock framework migration.

Import path updated correctly with no changes to test logic or mock API usage.

internal/host/hostcommands/disk_performance_cmd_test.go (1)

15-15: LGTM: Mock import updated correctly.

The import path change is consistent with the repository-wide mock framework migration.

internal/controller/controllers/mock_crd_events_handler.go (1)

1-11: LGTM: Generated mock file updated correctly.

This mock file has been correctly regenerated with the new go.uber.org/mock/mockgen tool. The generated code follows proper gomock patterns with the updated import path.

internal/controller/controllers/preprovisioningimage_controller_test.go (1)

25-25: LGTM: Mock framework migration completed successfully.

The import path update is consistent with the repository-wide migration to go.uber.org/mock. All mock object creations and expectations throughout this extensive test file remain functionally identical, confirming API compatibility.

internal/ignition/installmanifests_test.go (1)

36-36: Import migration to go.uber.org/mock is correct and complete.

The import change from github.com/golang/mock/gomock to go.uber.org/mock/gomock is properly implemented. All gomock API usages (NewController, EXPECT, Any, Times, Return) remain unchanged and are fully compatible with the new import path. The repository migration is already complete with all files using the new import.

internal/network/manifests_generator_test.go (1)

24-24: LGTM! Clean migration to maintained mock framework.

The import path update from github.com/golang/mock/gomock to go.uber.org/mock/gomock is correct. This aligns with the repository-wide migration to the actively maintained fork, and all existing mock usage patterns remain compatible.

internal/host/refresh_status_preprocessor_test.go (1)

21-21: LGTM! Import migration is correct.

The import path has been successfully updated to use the maintained go.uber.org/mock package. All mock usage patterns remain compatible with no changes to test behavior.

internal/common/testing/matchers.go (1)

7-7: LGTM! Matcher remains compatible with new mock framework.

The import update maintains full compatibility. The gomock.Matcher interface is stable across both the old and new mock packages, ensuring no breaking changes to the custom matcher implementation.

internal/controller/controllers/agentlabel_controller_test.go (1)

10-10: LGTM! Test framework migration is clean.

The import path update is correct. All mock controller lifecycle management (creation and cleanup) remains compatible with the new framework.

internal/bminventory/mock_installer_internal.go (1)

1-16: LGTM! Generated mock successfully migrated.

This file was correctly regenerated using go.uber.org/mock/mockgen. The import path update confirms the mock generation tooling is properly configured for the migration.

internal/cluster/common_test.go (1)

15-15: LGTM! Clean migration to go.uber.org/mock.

The import path update is correct and all gomock usage patterns (Controller, NewController, EXPECT) remain compatible with the Uber fork.

cmd/graphstatemachine/main.go (1)

9-9: LGTM! Import migration completed correctly.

The gomock import path is properly updated, and all mock controller and expectation setup remain functionally identical.

internal/host/hostcommands/connectivity_check_convertor_test.go (1)

12-12: LGTM! Test file migration is correct.

The gomock import update is appropriate, and mock controller initialization and expectations remain unchanged.

internal/hardware/mock_validator.go (1)

1-14: LGTM! Generated mock properly updated.

The MockGen-generated validator mock correctly uses the new go.uber.org/mock/gomock import path, maintaining all standard gomock patterns.

internal/host/hostcommands/mock_instruction_api.go (1)

1-13: LGTM! Generated mock updated correctly.

The MockGen-generated file now imports from go.uber.org/mock/gomock as expected. Verification confirms all generated mocks across the codebase use the updated import path.

internal/infraenv/mock_infraenv_api.go (1)

11-18: Generated mock now correctly targets go.uber.org/mock/gomock

The import swap to go.uber.org/mock/gomock is consistent with the existing usage of *gomock.Controller and *gomock.Call in this generated mock; no behavioral change or issues here. Please just ensure go.mod/vendor include the matching go.uber.org/mock version (as described in the PR).

internal/cluster/cluster_test.go (1)

14-46: Import migration to go.uber.org/mock/gomock looks correct

Updating the gomock import here to go.uber.org/mock/gomock aligns with the controller usage (gomock.NewController, gomock.Any, etc.) throughout this test file and should be API‑compatible. Just confirm the module dependency (go.uber.org/mock) is present and at the intended version in go.mod/vendor for test builds.

internal/infraenv/infraenv_test.go (1)

7-18: Switch to go.uber.org/mock/gomock is consistent with test usage

The test setup (gomock.NewController, mocks’ EXPECT calls) is compatible with go.uber.org/mock/gomock, so this import change is safe and behavior‑neutral. Verify that the repository’s dependencies already include go.uber.org/mock so these tests compile under all build environments.

internal/controller/controllers/infraenv_controller_test.go (1)

12-31: Controller tests correctly updated to use go.uber.org/mock/gomock

Importing go.uber.org/mock/gomock here matches the extensive gomock usage in this test file (controllers, expectations, gomock.Any()) and should be fully compatible. Just ensure the new mock package is pinned in go.mod and vendored so these controller tests compile in CI and downstream builds.

internal/controller/controllers/mock_drainer.go (1)

7-18: Drainer mock now targets go.uber.org/mock/gomock without behavior change

The generated MockDrainer continues to use the same gomock Controller/Call API, making the import change to go.uber.org/mock/gomock safe and behavior‑preserving. Confirm that your mockgen invocation and go.mod are already updated to the Uber mock module so regeneration stays consistent.

internal/host/hostutil/update_host_test.go (1)

17-17: LGTM!

The import path change is correct and consistent with the repository-wide migration to go.uber.org/mock. All gomock usage remains unchanged.

internal/host/hostrole_test.go (1)

24-24: LGTM!

The import update aligns with the migration to go.uber.org/mock. Mock setup and expectations throughout the test file remain unchanged.

internal/host/validations_test.go (1)

36-36: LGTM!

The import path change is correct and consistent with the repository-wide migration. Despite this being a large test file with extensive mock usage, all gomock APIs function correctly with the new import.

internal/host/hostcommands/instruction_manager_test.go (1)

28-28: Import migration to go.uber.org/mock v0.6.0 is correct and fully compatible.

The import path change is confirmed in go.mod and all existing gomock APIs (Controller, NewController, Any, EXPECT, etc.) remain fully compatible with the Uber fork. No breaking changes or API incompatibilities detected.

internal/cluster/validations/mock_pull_secret_validation.go (1)

10-10: LGTM! Generated mock file updated correctly.

The import path go.uber.org/mock/gomock is correct—the project uses go.uber.org/mock/mockgen@v0.6.0 (installed in hack/setup_env.sh), and this mock file is properly generated with the expected import from that package.

internal/controller/controllers/spoke_client_cache_test.go (1)

9-9: LGTM!

Import path correctly updated to the actively maintained go.uber.org/mock/gomock fork. The API is compatible, and no test logic changes are required.

api/v1beta1/infraenv_types.go (1)

28-32: LGTM!

Formatting-only changes with no semantic impact. Const values remain unchanged.

internal/hardware/validator_test.go (1)

29-29: LGTM!

Import path correctly migrated to go.uber.org/mock/gomock. The extensive gomock usage throughout this test file (Controller, EXPECT, Any, Eq matchers) is fully compatible with the Uber fork.

internal/host/mock_transition.go (1)

12-12: LGTM!

Generated mock file correctly regenerated with go.uber.org/mock/mockgen, updating the import path accordingly.

internal/controller/controllers/mock_spoke_client_cache.go (1)

12-12: LGTM!

Generated mock file correctly updated with the new go.uber.org/mock/gomock import path.

internal/controller/controllers/crd_utils_test.go (1)

15-15: LGTM!

Import path correctly migrated. Test logic and gomock usage remain unchanged and compatible.

internal/controller/controllers/mock_bmo_utils.go (1)

11-11: LGTM!

Generated mock file correctly updated with the new go.uber.org/mock/gomock import path.

internal/controller/controllers/bmo_utils_test.go (1)

12-12: LGTM: Import path updated for gomock migration.

The import path change from github.com/golang/mock/gomock to go.uber.org/mock/gomock is correct and consistent with the repository-wide migration to Uber's maintained fork. The API remains compatible, and no test logic changes are required.

internal/ignition/mock_ignition_builder.go (1)

14-14: LGTM: Generated mock updated correctly.

The import path in this generated mock file has been correctly updated to use go.uber.org/mock/gomock. The mock implementation remains functionally identical.

internal/cluster/mock_transition.go (1)

12-12: LGTM: Mock import path migration complete.

The generated mock file correctly uses the new go.uber.org/mock/gomock import path, maintaining full API compatibility with the previous version.

internal/cluster/validator_test.go (1)

18-18: LGTM: Test import updated for gomock migration.

The import path change aligns with the repository-wide migration to go.uber.org/mock/gomock v0.6.0. All test logic and mock usage patterns remain unchanged and compatible.

internal/controller/controllers/bmh_agent_controller_test.go (1)

28-28: LGTM: Import path migration successful.

The update to go.uber.org/mock/gomock maintains full compatibility with all existing mock patterns and test logic in this comprehensive test suite.

internal/controller/controllers/agent_controller_test.go (1)

34-34: Gomock import-path migration is correct and non-breaking

Switching to go.uber.org/mock/gomock matches the updated dependency and is drop‑in for existing gomock usage throughout this test.

internal/manifests/manifests_test.go (1)

27-27: Uber Gomock import aligns with the new mocking dependency

Using go.uber.org/mock/gomock here keeps the manifest tests consistent with the repository‑wide gomock migration, with no changes needed to the test logic.

internal/controller/controllers/agentclassification_controller_test.go (1)

11-11: Updated gomock import is consistent and safe

The move to go.uber.org/mock/gomock matches the new mock dependency and keeps the existing controller lifecycle intact.

internal/controller/controllers/agentclusterinstall_controller_test.go (1)

12-12: Gomock import-path update matches the dependency change

Importing go.uber.org/mock/gomock here aligns this controller test with the new mock module without altering behavior.

hack/setup_env.sh (1)

64-64: mockgen migration to go.uber.org/mock@v0.6.0 is correctly implemented and complete

The install command at line 64 is consistent with the migration. Verified that:

  • No remaining references to the old github.com/golang/mock path
  • Both hack/setup_env.sh and ci-images/Dockerfile.code-generation use the same version (v0.6.0)
  • go.mod specifies matching version go.uber.org/mock v0.6.0
internal/controller/controllers/hypershiftagentserviceconfig_controller_test.go (1)

16-16: LGTM! Migration to maintained mock framework.

The import path change from github.com/golang/mock to go.uber.org/mock is correct. The original golang/mock package is deprecated, and Uber's fork is now the community-maintained successor with full API compatibility.

internal/cluster/mock_cluster_api.go (1)

15-15: LGTM! Generated mock updated correctly.

The import path in this generated mock file has been correctly updated to use go.uber.org/mock/gomock. This file will be regenerated by the updated mockgen tool specified in the Dockerfile.

internal/cluster/refresh_status_preprocessor_test.go (1)

19-19: LGTM! Consistent mock framework migration.

The import path update aligns with the repository-wide migration to go.uber.org/mock.

ci-images/Dockerfile.code-generation (1)

24-24: LGTM! Code generation tooling updated correctly.

The mockgen installation command now uses go.uber.org/mock/mockgen@v0.6.0, which aligns with the repository-wide migration. The version bump from v1.5.0 to v0.6.0 is expected, as Uber's fork uses a different versioning scheme.

internal/ignition/disconnected_test.go (1)

23-23: LGTM! Migration complete.

The import path update is consistent with the repository-wide migration to the maintained go.uber.org/mock package.

internal/cluster/progress_test.go (1)

25-25: Switch to Uber GoMock import looks correct

The new go.uber.org/mock/gomock import matches the existing gomock usage in this test and is API-compatible with the prior path.

Please run the relevant test suite (go test ./internal/cluster/...) to confirm there are no subtle mock-generation or version mismatches.

api/v1beta1/agentserviceconfig_types.go (1)

258-259: Struct field re-alignment is cosmetic only

This is a whitespace-only change to AgentServiceConfigStatus; it does not affect API surface or serialization and is fine as-is.

internal/controller/controllers/clusterdeployments_controller_test.go (1)

38-38: Uber GoMock import aligns with existing test usage

The switch to go.uber.org/mock/gomock is compatible with how mocks and controllers are used throughout this test file and matches the repo-wide migration.

Recommend running the controller tests (go test ./internal/controller/controllers/...) once with the new mock version to confirm everything passes under go.uber.org/mock v0.6.0.

.github/dependabot.yml (1)

12-25: Dependabot grouping for k8s/openshift vs general Go deps is correctly configured

The k8s and openshift groups with matching exclude-patterns on go-dependencies properly route k8s.io/, sigs.k8s.io/, and github.com/openshift/* modules into dedicated PR groups while keeping other Go modules in go-dependencies. YAML structure and field names are valid Dependabot v2 format, with no syntax errors.

internal/cluster/transition_test.go (1)

36-36: Import migration to go.uber.org/mock/gomock is correct

The gomock import path update is properly migrated; no old github.com/golang/mock/gomock imports remain in the repository, and existing usages (gomock.Controller, EXPECT, etc.) work correctly with the new import path.

internal/common/testing/dummies.go (1)

5-5: LGTM! Clean import migration to Uber's gomock.

The import path update is correct and the gomock API usage remains unchanged, ensuring backward compatibility.

go.mod (2)

117-118: LGTM! Indirect dependency adjustments are expected.

The retention of github.com/golang/mock as an indirect dependency and the google/btree version change are standard transitive dependency adjustments when swapping primary dependencies.


78-78: No issues found with go.uber.org/mock v0.6.0.

The migration from the deprecated github.com/golang/mock to go.uber.org/mock v0.6.0 is appropriate. Version v0.6.0 is the latest stable release with no known security vulnerabilities.

internal/installercache/mock_installercache.go (1)

1-14: LGTM! Generated mock correctly updated.

The import path change is correct and consistent with the repository-wide migration to go.uber.org/mock.

internal/installercache/installercache_test.go (1)

25-25: LGTM! Test import successfully migrated.

The import path update is correct and all gomock API usage in the test remains unchanged, demonstrating backward compatibility.

internal/controller/controllers/mock_k8s_client.go (1)

1-17: LGTM! Generated mock properly updated.

The import path change is correct for this generated mock file. All mock files across the repository have been regenerated with the new mockgen tool from go.uber.org/mock.

internal/bminventory/inventory_test.go (1)

85-85: LGTM!

Correct migration from the archived github.com/golang/mock to the actively maintained go.uber.org/mock fork.

internal/events/event_test.go (1)

30-30: Gomock import migration looks correct

Importing go.uber.org/mock/gomock matches the new mockgen source and existing usage of gomock.NewController and Finish, with no other changes needed in this file.

internal/host/hostcommands/domain_name_resolution_cmd_test.go (1)

18-18: Updated gomock import is consistent with project-wide change

Switch to go.uber.org/mock/gomock aligns with the new mock dependency; the gomock.NewController usage and mocks remain valid.

internal/host/host_test.go (1)

40-40: Host tests now correctly reference go.uber.org/mock/gomock

The import path update to go.uber.org/mock/gomock is compatible with existing controller and mock usages throughout this large test file.

internal/dns/dns_test.go (1)

15-15: DNS tests successfully migrated to Uber gomock

Aliased import gomock "go.uber.org/mock/gomock" keeps call sites unchanged and is consistent with the rest of the suite.

internal/metrics/metricsManager_test.go (1)

14-14: Metrics tests use updated gomock import correctly

The move to go.uber.org/mock/gomock matches the updated mocks in internal/metrics and works with gomock.NewController and expectations below.

internal/host/monitor_test.go (1)

28-28: LGTM! Import path updated correctly.

The migration from github.com/golang/mock/gomock to go.uber.org/mock/gomock is correct. The go.uber.org/mock package is the actively maintained fork that provides API compatibility with the original golang/mock package.

internal/manifests/api/mock_manifests_api.go (1)

15-15: LGTM! Generated mock updated correctly.

The import path has been successfully updated to go.uber.org/mock/gomock in this MockGen-generated file, consistent with the broader migration to the maintained fork.

internal/events/api/mock_event.go (1)

14-14: LGTM! Mock generation updated correctly.

The import path migration to go.uber.org/mock/gomock is properly reflected in this generated mock file.

internal/host/mock_host_api.go (1)

15-15: LGTM! Generated mock properly updated.

The import path change to go.uber.org/mock/gomock is correct for this MockGen-generated file, aligning with the project-wide migration.

internal/installcfg/builder/builder_test.go (1)

24-24: LGTM! Test import successfully migrated.

The update to go.uber.org/mock/gomock maintains all existing test functionality while adopting the actively maintained mock framework.

internal/metrics/mock_metrics_manager_api.go (1)

14-14: LGTM!

The import path migration from github.com/golang/mock/gomock to go.uber.org/mock/gomock is correct. This aligns with the industry-standard migration after the original golang/mock project was archived.

internal/dns/mock_dns.go (1)

13-13: LGTM!

Import path correctly updated to Uber's maintained fork.

internal/installcfg/builder/mock_installcfg.go (1)

11-11: LGTM!

Import path migration applied consistently.

internal/host/hostcommands/download_boot_artifacts_cmd_test.go (1)

19-19: LGTM!

Import path updated correctly. The gomock API usage throughout the test file (Controller, NewController, EXPECT patterns) remains compatible with the Uber fork.

internal/manifests/api/mock_manifests_internal.go (1)

14-14: LGTM!

Import path migration applied correctly to the generated mock.

internal/host/hostcommands/container_image_availability_cmd_test.go (1)

18-18: LGTM!

Import path updated. All gomock usage patterns (NewController, EXPECT, gomock.Any(), Times, Return) work identically with the Uber fork.

internal/metrics/mock_disk_stats_helper.go (1)

10-10: LGTM!

Import path migration completed consistently across all mock files.

internal/metrics/directory_usage_collector_test.go (1)

10-10: Import path correctly updated to go.uber.org/mock.

The gomock migration is properly implemented. The generated mock file and test imports are consistent, codebase-wide migration to go.uber.org/mock is complete with no stray old imports, and go.mod correctly specifies the dependency.


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

@openshift-ci openshift-ci bot added size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files. api-review Categorizes an issue or PR as actively needing an API review. labels Jan 5, 2026
@openshift-ci openshift-ci bot requested review from carbonin and omertuc January 5, 2026 23:29
@openshift-ci
Copy link

openshift-ci bot commented Jan 5, 2026

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: sebrandon1
Once this PR has been reviewed and has the lgtm label, please assign carbonin for approval. For more information see the Code Review Process.

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

Details 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

@openshift-ci
Copy link

openshift-ci bot commented Jan 5, 2026

@sebrandon1: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
ci/prow/edge-e2e-metal-assisted-osc-4-20 c38f415 link true /test edge-e2e-metal-assisted-osc-4-20
ci/prow/edge-e2e-ai-operator-disconnected-capi c38f415 link true /test edge-e2e-ai-operator-disconnected-capi
ci/prow/edge-subsystem-kubeapi-aws c38f415 link true /test edge-subsystem-kubeapi-aws
ci/prow/edge-images c38f415 link true /test edge-images
ci/prow/edge-e2e-metal-assisted-virtualization-4-19 c38f415 link true /test edge-e2e-metal-assisted-virtualization-4-19
ci/prow/edge-e2e-ai-operator-ztp c38f415 link true /test edge-e2e-ai-operator-ztp
ci/prow/edge-e2e-vsphere-assisted-4-20 c38f415 link true /test edge-e2e-vsphere-assisted-4-20
ci/prow/images c38f415 link true /test images
ci/prow/okd-scos-images c38f415 link true /test okd-scos-images
ci/prow/edge-unit-test c38f415 link true /test edge-unit-test
ci/prow/edge-lint c38f415 link true /test edge-lint
ci/prow/edge-verify-generated-code c38f415 link true /test edge-verify-generated-code
ci/prow/edge-subsystem-aws c38f415 link true /test edge-subsystem-aws
ci/prow/verify-deps c38f415 link true /test verify-deps
ci/prow/edge-e2e-metal-assisted-none-4-20 c38f415 link true /test edge-e2e-metal-assisted-none-4-20
ci/prow/e2e-agent-compact-ipv4 c38f415 link true /test e2e-agent-compact-ipv4
ci/prow/edge-e2e-ai-operator-ztp-capi c38f415 link true /test edge-e2e-ai-operator-ztp-capi
ci/prow/edge-e2e-metal-assisted-4-20 c38f415 link true /test edge-e2e-metal-assisted-4-20
ci/prow/mce-images c38f415 link true /test mce-images
ci/prow/edge-e2e-metal-assisted-external-4-20 c38f415 link true /test edge-e2e-metal-assisted-external-4-20
ci/prow/edge-e2e-metal-assisted-openshift-ai-4-18 c38f415 link true /test edge-e2e-metal-assisted-openshift-ai-4-18
ci/prow/edge-e2e-metal-assisted-lvm-4-20 c38f415 link true /test edge-e2e-metal-assisted-lvm-4-20
ci/prow/edge-ci-index c38f415 link true /test edge-ci-index

Full PR test history. Your PR dashboard.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository. I understand the commands that are listed here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api-review Categorizes an issue or PR as actively needing an API review. needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/XXL Denotes a PR that changes 1000+ lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants