Skip to content

NE-2765: Bump Kubernetes to 1.36.2 and Go to 1.26#483

Open
aswinsuryan wants to merge 1 commit into
openshift:masterfrom
aswinsuryan:NE-2765/k8s-1.36-bump
Open

NE-2765: Bump Kubernetes to 1.36.2 and Go to 1.26#483
aswinsuryan wants to merge 1 commit into
openshift:masterfrom
aswinsuryan:NE-2765/k8s-1.36-bump

Conversation

@aswinsuryan

@aswinsuryan aswinsuryan commented Jul 14, 2026

Copy link
Copy Markdown
Contributor
  • Bump k8s.io modules from v0.35.0 to v0.36.2
  • Bump Go from 1.25.0 to 1.26.0
  • Bump sigs.k8s.io/controller-runtime from v0.23.1 to v0.24.1
  • Update openshift/api, openshift/client-go, openshift/library-go, and coredns-ocp-dnsnameresolver to latest
  • Sync CRD manifests with updated openshift/api — feature-gated CRD variants consolidated into a single file
  • The updated openshift/api consolidated the three separate feature-gated DNSNameResolver CRD variants (CustomNoUpgrade, DevPreviewNoUpgrade, TechPreviewNoUpgrade) into a single unified CRD file using the api.openshift.io/merged-by-featuregates annotation. The hack scripts and manifests were updated accordingly to point to the new source paths.

Summary by CodeRabbit

  • Chores

    • Bumped the Go toolchain and refreshed core Kubernetes/OpenShift dependency versions.
    • Refreshed supporting libraries (including transitive dependencies) for ongoing compatibility and maintenance.
  • Bug Fixes

    • Updated the generated DNS name resolver CRD install/update process to use the standard CRD manifest, avoiding the previously applied multiple “NoUpgrade” variant manifests.

@openshift-ci openshift-ci Bot added the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 14, 2026
@openshift-ci

openshift-ci Bot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Skipping CI for Draft Pull Request.
If you want CI signal for your change, please convert it to an actual PR.
You can still manually trigger a test run with /test all

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Jul 14, 2026
@openshift-ci-robot

openshift-ci-robot commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

@aswinsuryan: This pull request references NE-2765 which is a valid jira issue.

Warning: The referenced jira issue has an invalid target version for the target branch this PR targets: expected the story to target the "5.0.0" version, but no target version was set.

Details

In response to this:

  • Bump k8s.io modules from v0.35.0 to v0.36.2
  • Bump Go from 1.25.0 to 1.26.0
  • Bump sigs.k8s.io/controller-runtime from v0.23.1 to v0.24.1
  • Update openshift/api, openshift/client-go, openshift/library-go, and coredns-ocp-dnsnameresolver to latest

Summary by CodeRabbit

  • Chores
  • Updated the application’s Go runtime and core platform libraries.
  • Refreshed Kubernetes, OpenShift, observability, and related supporting components.
  • Tidied and synchronized transitive dependency versions for improved build consistency.

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 openshift-eng/jira-lifecycle-plugin repository.

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review

No actionable comments were generated in the recent review. 🎉


Walkthrough

The module targets Go 1.26 with refreshed Kubernetes, OpenShift, controller-runtime, and transitive dependencies. The CRD update script now installs the base DNSNameResolver CRD manifest instead of NoUpgrade variants.

Changes

Dependency and CRD updates

Layer / File(s) Summary
Go toolchain and dependency graph
go.mod
The Go directive and direct and indirect dependencies are updated, including Kubernetes libraries, controller-runtime, OpenAPI modules, telemetry libraries, and the backoff module replacement.
Base DNSNameResolver CRD installation
hack/update-generated-crd.sh
The script now installs the base dnsnameresolvers.crd.yaml manifest instead of the TechPreviewNoUpgrade, CustomNoUpgrade, and DevPreviewNoUpgrade variants.

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

Possibly related PRs

Suggested labels: lgtm

Suggested reviewers: frobware, alebedev87

🚥 Pre-merge checks | ✅ 5 | ❌ 10

❌ Failed checks (10 inconclusive)

Check name Status Explanation Resolution
Stable And Deterministic Test Names ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Test Structure And Quality ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Microshift Test Compatibility ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Single Node Openshift (Sno) Test Compatibility ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Topology-Aware Scheduling Compatibility ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Ote Binary Stdout Contract ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Ipv6 And Disconnected Network Test Compatibility ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
No-Weak-Crypto ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
Container-Privileges ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
No-Sensitive-Data-In-Logs ❓ Inconclusive Repository clone failed, so this custom check could not run with code access. Retry the review run. If this persists, inspect pre-merge custom-check logs for infrastructure or agent runtime failures.
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly matches the main dependency upgrades to Kubernetes 1.36.2 and Go 1.26.
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.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Warning

Tools execution failed with the following error:

Failed to run tools: 14 UNAVAILABLE: read ECONNRESET


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.

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/jira refresh

@openshift-ci-robot

openshift-ci-robot commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

@aswinsuryan: This pull request references NE-2765 which is a valid jira issue.

Details

In response to this:

/jira refresh

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 openshift-eng/jira-lifecycle-plugin repository.

@aswinsuryan
aswinsuryan force-pushed the NE-2765/k8s-1.36-bump branch from 66b91cd to 6235989 Compare July 15, 2026 03:10
@aswinsuryan
aswinsuryan marked this pull request as ready for review July 15, 2026 03:10
@openshift-ci openshift-ci Bot removed the do-not-merge/work-in-progress Indicates that a PR should not merge because it is a work in progress. label Jul 15, 2026
@openshift-ci
openshift-ci Bot requested review from alebedev87 and frobware July 15, 2026 03:10
@coderabbitai

coderabbitai Bot commented Jul 15, 2026

Copy link
Copy Markdown

Caution

Failed to replace (edit) comment. This is likely due to insufficient permissions or the comment being deleted.

Error details
Validation Failed: {"resource":"IssueComment","code":"custom","field":"body","message":"body is too long (maximum is 65536 characters)"} - https://docs.github.com/rest/issues/comments#update-an-issue-comment

@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: 3

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

3-22: 📐 Maintainability & Code Quality | 🔵 Trivial

Ensure SBOM generation and artifact signing.

As per path instructions for supply chain security, ensure that the build pipeline is configured to produce provenance attestations (SBOM) and that all produced artifacts are signed with Sigstore/cosign.

🤖 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 3 - 22, Update the build and release pipeline
configuration associated with the Go module dependencies to generate
provenance/SBOM attestations for every build artifact and sign all produced
artifacts using Sigstore/cosign. Ensure both steps run as part of the existing
artifact publication flow and fail the pipeline when attestation or signing
fails.

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`:
- Around line 98-100: Remove the replace directive for
github.com/openshift/library-go that points to the personal fork and unreleased
pseudo-version. Restore dependency resolution to the official upstream module,
using an approved released version or the upstream merged changes instead.

In `@manifests/0000_70_dns_00_dnsnameresolvers.crd.yaml`:
- Line 9: Update the root openAPIV3Schema description in the DNSNameResolvers
CustomResourceDefinition to document DevPreviewNoUpgrade alongside the existing
TechPreviewNoUpgrade and CustomNoUpgrade feature sets, matching the supported
values in the release.openshift.io/feature-set annotation.

In `@manifests/0000_70_dns-operator_00.crd.yaml`:
- Around line 174-177: Update the taint toleration operator schema near the
documented “Valid operators” text to add an OpenAPI enum constraint for Exists,
Equal, Lt, and Gt, and set its default to Equal. Keep the field type as string
and preserve the existing feature-gate documentation.

---

Nitpick comments:
In `@go.mod`:
- Around line 3-22: Update the build and release pipeline configuration
associated with the Go module dependencies to generate provenance/SBOM
attestations for every build artifact and sign all produced artifacts using
Sigstore/cosign. Ensure both steps run as part of the existing artifact
publication flow and fail the pipeline when attestation or signing fails.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

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

Comment thread go.mod Outdated
Comment thread manifests/0000_70_dns_00_dnsnameresolvers.crd.yaml
Comment thread manifests/0000_70_dns-operator_00.crd.yaml
@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/test e2e-aws-ovn

@gcs278

gcs278 commented Jul 15, 2026

Copy link
Copy Markdown
Contributor

/assign @bentito

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Caution

Failed to replace (edit) comment. This is likely due to insufficient permissions or the comment being deleted.

Error details
Validation Failed: {"resource":"IssueComment","code":"custom","field":"body","message":"body is too long (maximum is 65536 characters)"} - https://docs.github.com/rest/issues/comments#update-an-issue-comment

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

@coderabbitai full-review

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

@aswinsuryan, starting a full review of the PR, including all changes and prior feedback context.

✅ Action performed

Full review finished.


Your plan includes PR reviews subject to rate limits. More reviews will be available in 7 minutes.

@coderabbitai

coderabbitai Bot commented Jul 17, 2026

Copy link
Copy Markdown

Caution

Failed to replace (edit) comment. This is likely due to insufficient permissions or the comment being deleted.

Error details
Validation Failed: {"resource":"IssueComment","code":"custom","field":"body","message":"body is too long (maximum is 65536 characters)"} - https://docs.github.com/rest/issues/comments#update-an-issue-comment

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/retest-required

@bentito

bentito commented Jul 20, 2026

Copy link
Copy Markdown
Contributor

Were the manifest changes in this PR required by the bumps? Maybe a PR description note so we have some documentation on why.

@aswinsuryan

aswinsuryan commented Jul 21, 2026

Copy link
Copy Markdown
Contributor Author

Were the manifest changes in this PR required by the bumps? Maybe a PR description note so we have some documentation on why.

Yes, the manifest changes were required by the bumps. The new openshift/api restructured how CRDs are delivered, the 3 separate feature-gated DNSNameResolver CRD files were consolidated into a single file. The hack scripts had to be updated to point to the new paths.

The PR description is updated.

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/test e2e-aws-ovn

1 similar comment
@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/test e2e-aws-ovn

@melvinjoseph86

Copy link
Copy Markdown

/retest-required

@aswinsuryan
aswinsuryan force-pushed the NE-2765/k8s-1.36-bump branch from b262859 to 54f1f6e Compare July 21, 2026 14:02

@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: 1

🤖 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 81: Update the go.opentelemetry.io/otel/sdk dependency in go.mod from
v1.40.0 to v1.43.0 or later, ensuring the resolved module version is outside the
affected vulnerability range.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

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

Comment thread go.mod Outdated
@aswinsuryan
aswinsuryan force-pushed the NE-2765/k8s-1.36-bump branch from 54f1f6e to 802ce9a Compare July 21, 2026 15:01
@bentito

bentito commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

/lgtm
/approve

@bentito

bentito commented Jul 21, 2026

Copy link
Copy Markdown
Contributor

/retest

@openshift-ci openshift-ci Bot added lgtm Indicates that a PR is ready to be merged. approved Indicates a PR has been approved by an approver from all required OWNERS files. labels Jul 21, 2026
@melvinjoseph86

Copy link
Copy Markdown

/test e2e-aws-ovn

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

@coderabbitai review

@coderabbitai

coderabbitai Bot commented Jul 22, 2026

Copy link
Copy Markdown
✅ Action performed

Review finished.

Note: CodeRabbit is an incremental review system and does not re-review already reviewed commits. This command is applicable only when automatic reviews are paused.

@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: 1

🤖 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 101: Update the google.golang.org/grpc dependency from v1.79.3 to v1.82.1
or later, then regenerate the vendored module graph and go.sum so all dependency
metadata reflects the upgraded version, and rescan the resulting graph.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

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

Comment thread go.mod Outdated
Bump k8s.io modules to v0.36.2, controller-runtime to v0.24.1,
and Go to 1.26. Update openshift/api, openshift/client-go, and
openshift/library-go to latest upstream. Update CRD hack script
for consolidated DNSNameResolver CRD.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Signed-off-by: Aswin Suryanarayanan <asuryana@redhat.com>
@aswinsuryan
aswinsuryan force-pushed the NE-2765/k8s-1.36-bump branch from 802ce9a to ae75168 Compare July 22, 2026 15:16
@openshift-ci openshift-ci Bot removed the lgtm Indicates that a PR is ready to be merged. label Jul 22, 2026
@bentito

bentito commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

/lgtm
/approve

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

openshift-ci Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: bentito

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:

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

@melvinjoseph86

Copy link
Copy Markdown

/verified by CI

@openshift-ci-robot openshift-ci-robot added the verified Signifies that the PR passed pre-merge verification criteria label Jul 22, 2026
@openshift-ci-robot

Copy link
Copy Markdown
Contributor

@melvinjoseph86: This PR has been marked as verified by CI.

Details

In response to this:

/verified by CI

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 openshift-eng/jira-lifecycle-plugin repository.

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/test e2e-aws-ovn

@bentito

bentito commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

/retest

@openshift-ci

openshift-ci Bot commented Jul 22, 2026

Copy link
Copy Markdown
Contributor

@aswinsuryan: The following test 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/e2e-aws-ovn-serial-2of2 ae75168 link true /test e2e-aws-ovn-serial-2of2

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.

@aswinsuryan

Copy link
Copy Markdown
Contributor Author

/retest-required

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. jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. lgtm Indicates that a PR is ready to be merged. verified Signifies that the PR passed pre-merge verification criteria

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants