Skip to content

UPSTREAM: <carry>: Bump openshift/client-go and openshift/api to release-4.23 - #450

Merged
openshift-merge-bot[bot] merged 3 commits into
openshift:oadp-devfrom
Joeavaikath:fix-openshift-client-go-smd-v6
Jul 21, 2026
Merged

UPSTREAM: <carry>: Bump openshift/client-go and openshift/api to release-4.23#450
openshift-merge-bot[bot] merged 3 commits into
openshift:oadp-devfrom
Joeavaikath:fix-openshift-client-go-smd-v6

Conversation

@Joeavaikath

@Joeavaikath Joeavaikath commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bumps openshift/client-go and openshift/api from 2023/2024 commits to release-4.23 (k8s v0.36.x)
  • Bumps controller-runtime v0.17.2 → v0.24.0 and k8s deps v0.29.0 → v0.36.2
  • Adds exclude for kcp-dev/kcp/sdk zero-version pseudo-version (monorepo local replace)
  • Updates velero replace directive to latest oadp-dev head

Why

The velero rebase to upstream v1.16+ pulled in structured-merge-diff/v6 via k8s v0.36.x deps. The old openshift/client-go (2023 commit) uses structured-merge-diff/v4, causing type incompatibility errors during go vet:

cannot use internal.Parser().Type(...) (value of struct type
"sigs.k8s.io/structured-merge-diff/v4/typed".ParseableType) as
"sigs.k8s.io/structured-merge-diff/v6/typed".ParseableType value

This blocks the auto-rebase CI.

Test plan

  • go build ./... passes (with containers_image_openpgp tag for local macOS)
  • go mod tidy is clean
  • go test -short ./... passes (except pre-existing envtest failures requiring etcd)
  • CI lint + vet passes on Linux

Posted via Claude Code

Summary by CodeRabbit

  • Chores
    • Updated the application’s underlying runtime and platform components.
    • Refreshed supporting libraries to newer versions for improved compatibility, stability, and maintenance.
    • Updated module resolution and build configuration to align with the latest supported tooling.
    • Upgraded the Go toolchain to 1.26.0 and refreshed Kubernetes/OpenShift and Velero-related dependencies.

…ase-4.23

Bump openshift/client-go and openshift/api from 2023/2024 commits to
release-4.23 (k8s v0.36.x) to resolve structured-merge-diff/v4 vs v6
type incompatibility that breaks go vet after velero rebase.

Also bumps controller-runtime v0.17.2 -> v0.24.0, k8s deps v0.29.0 ->
v0.36.2, and adds exclude for kcp/sdk zero-version pseudo-version.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>
@coderabbitai

coderabbitai Bot commented Jul 21, 2026

Copy link
Copy Markdown

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: e978512e-7d4a-4598-a0a1-b97de0e80cb9

📥 Commits

Reviewing files that changed from the base of the PR and between 512f406 and 72f094a.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (1)
  • go.mod
🚧 Files skipped from review as they are similar to previous changes (1)
  • go.mod

Walkthrough

go.mod targets Go 1.26.0, upgrades Kubernetes/OpenShift, controller-runtime, logging, and Velero requirements, refreshes indirect modules, and adds KCP exclusion and Velero replacement directives.

Changes

Dependency refresh

Layer / File(s) Summary
Core dependency alignment
go.mod
The Go toolchain and direct logging, Kubernetes, OpenShift, controller-runtime, and Velero API requirements are updated.
Transitive dependencies and module resolution
go.mod
Indirect dependencies are refreshed, including snapshotter and Go modules, while KCP exclusion and Velero replacement directives are added or updated.

Estimated code review effort: 2 (Simple) | ~10 minutes

Suggested reviewers: shubham-pampattiwar

🚥 Pre-merge checks | ✅ 15
✅ Passed checks (15 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly summarizes the main dependency bump to openshift/client-go and openshift/api for release-4.23.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Stable And Deterministic Test Names ✅ Passed PR only changes go.mod/go.sum; no Go test files or Ginkgo titles were modified, so no unstable test names were introduced.
Test Structure And Quality ✅ Passed PR only changes go.mod and go.sum; no Ginkgo test code was modified, so the test-quality review is not applicable.
Microshift Test Compatibility ✅ Passed PR only changes go.mod/go.sum dependency versions; no Ginkgo e2e tests or MicroShift-sensitive APIs were added.
Single Node Openshift (Sno) Test Compatibility ✅ Passed Only go.mod and go.sum changed; no new Ginkgo e2e tests were added, so SNO compatibility is not implicated.
Topology-Aware Scheduling Compatibility ✅ Passed Only go.mod/go.sum changed; no manifests, controllers, or scheduling code were modified, so topology-aware scheduling checks are not applicable.
Ote Binary Stdout Contract ✅ Passed PR only changes go.mod/go.sum; no process-level Go code was touched, and main/init entries show no stdout writes or missing stderr redirection.
Ipv6 And Disconnected Network Test Compatibility ✅ Passed No Ginkgo e2e tests were added; the PR only changes go.mod/go.sum dependency versions, so IPv4/external-connectivity test issues are not applicable.
No-Weak-Crypto ✅ Passed PASS: The PR only changes go.mod/go.sum dependency metadata; no source files or crypto code were added.
Container-Privileges ✅ Passed PR only changes go.mod and go.sum; no container/K8s manifests or privilege fields were modified.
No-Sensitive-Data-In-Logs ✅ Passed Only go.mod and go.sum changed; no logging code or sensitive literals were added.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 21, 2026
kaovilai
kaovilai previously approved these changes Jul 21, 2026

@kaovilai kaovilai left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🧹 Nitpick comments (1)
go.mod (1)

17-35: 🔒 Security & Privacy | 🔵 Trivial

Add release-time supply-chain controls

go.sum already pins the module hashes, but the repository still doesn’t show OSV scanning, SBOM/provenance attestations, or artifact signing in release automation. Add or point to the job that handles those controls if these artifacts are shipped.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@go.mod` around lines 17 - 35, Add release automation for shipped artifacts
that performs OSV dependency scanning, generates SBOM and provenance
attestations, and signs release artifacts; if these controls already exist
elsewhere, reference the responsible job from the release workflow. Ensure the
workflow covers every released artifact and runs during the release process.

Source: Path instructions

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@go.mod`:
- Line 139: Replace the unapproved timestamped pseudo-versions for
github.com/vmware-tanzu/velero/pkg/apis at go.mod lines 139-139 and the
github.com/openshift/velero replacement at go.mod lines 239-239 with stable
signed releases; if no suitable releases exist, document an approved exception
covering license compatibility, OSV results, provenance/SBOM generation, and
artifact signing for both entries.
- Around line 118-140: Update the k8s.io/apiextensions-apiserver dependency in
the go.mod require block from v0.36.0 to v0.36.2, matching k8s.io/api,
k8s.io/apimachinery, and k8s.io/client-go while leaving other dependencies
unchanged.

---

Nitpick comments:
In `@go.mod`:
- Around line 17-35: Add release automation for shipped artifacts that performs
OSV dependency scanning, generates SBOM and provenance attestations, and signs
release artifacts; if these controls already exist elsewhere, reference the
responsible job from the release workflow. Ensure the workflow covers every
released artifact and runs during the release process.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Repository: openshift/coderabbit/.coderabbit.yaml

Review profile: CHILL

Plan: Enterprise

Run ID: fd502c8a-ffd9-4681-8915-1c829c17a360

📥 Commits

Reviewing files that changed from the base of the PR and between 2b9f8f8 and 512f406.

⛔ Files ignored due to path filters (1)
  • go.sum is excluded by !**/*.sum
📒 Files selected for processing (1)
  • go.mod

Comment thread go.mod
Comment thread go.mod
sigs.k8s.io/yaml v1.6.0
)

require github.com/vmware-tanzu/velero/pkg/apis v0.0.0-20260713215154-c825e3c136bc

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔒 Security & Privacy | 🟠 Major | 🏗️ Heavy lift

Do not ship unapproved prerelease pseudo-versions.

Both Velero entries use timestamped pseudo-versions, which conflicts with the production supply-chain policy. Prefer stable signed releases; otherwise document an approved exception covering license compatibility, OSV results, provenance/SBOM generation, and artifact signing.

  • go.mod#L139-L139: replace or approve the github.com/vmware-tanzu/velero/pkg/apis pseudo-version.
  • go.mod#L239-L239: replace or approve the github.com/openshift/velero replacement pseudo-version.
📍 Affects 1 file
  • go.mod#L139-L139 (this comment)
  • go.mod#L239-L239
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@go.mod` at line 139, Replace the unapproved timestamped pseudo-versions for
github.com/vmware-tanzu/velero/pkg/apis at go.mod lines 139-139 and the
github.com/openshift/velero replacement at go.mod lines 239-239 with stable
signed releases; if no suitable releases exist, document an approved exception
covering license compatibility, OSV results, provenance/SBOM generation, and
artifact signing for both entries.

Source: Path instructions

Point velero/pkg/apis to the downstream fork at the same commit as the
main velero replace directive.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>
@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jul 21, 2026
…36.2

Align with k8s.io/api, k8s.io/apimachinery, and k8s.io/client-go.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Signed-off-by: Joseph <jvaikath@redhat.com>
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Jul 21, 2026
@openshift-ci

openshift-ci Bot commented Jul 21, 2026

Copy link
Copy Markdown

@Joeavaikath: all tests passed!

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.

@kaovilai

Copy link
Copy Markdown
Member

/lgtm

@weshayutin weshayutin left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/LGTM

@openshift-ci openshift-ci Bot added the lgtm Indicates that a PR is ready to be merged. label Jul 21, 2026
@openshift-ci

openshift-ci Bot commented Jul 21, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: Joeavaikath, kaovilai, weshayutin

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

The pull request process is described here

Details Needs approval from an approver in each of these files:
  • OWNERS [Joeavaikath,kaovilai]

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

@openshift-merge-bot
openshift-merge-bot Bot merged commit 8c8199b into openshift:oadp-dev Jul 21, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

approved Indicates a PR has been approved by an approver from all required OWNERS files. lgtm Indicates that a PR is ready to be merged.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants