OCPBUGS-77929,OCPBUGS-66890: Sync upstream main 2026-04-23 - #419
openshift-merge-bot[bot] merged 14 commits into
Conversation
The branch protection is managed from the https://github.com/kubernetes/test-infra repository. It currently requires that the "Integration" job will pass. But since we now the integration is a matrics that creates two test lanes, then the "integration" rule is never satisfied. This PR renames the original "integration" job, to "integration-tests", and adds new rollout job with the original name of "integration", to pass only if all the jobs defined by the matrix passed. Now the existing "Integration" branch protection rule should work. Signed-off-by: Nahshon Unna Tsameret <nahsh.ut@gmail.com>
the webhook server should use the tlsconfig specified in the manager options, so users setting tls fields in the manager see their preference honoured not only for the metrics server but also for the webhook server. Core CAPI does this already, here: https://github.com/kubernetes-sigs/cluster-api/blob/55e16f424c0ed8d3739070125d4c32a036997465/main.go#L406
…ig-for-webhook-server fix: use tlsconfig from the manager options for the webhook server
…ranch Force e2e integration pass before merging PRs
drainNode() was using vmiInstance.Status.EvacuationNodeName to look up the node in the guest cluster, but that field contains the host/infra node name. This caused the drain to silently fail with a NotFound error, meaning workloads were abruptly killed instead of being gracefully evicted. Use KubevirtMachine.Name instead, which is the guest node name, consistent with the rest of the codebase (e.g. updateNodeProviderID, GenerateProviderID). Update unit tests to use distinct values for the host node name and guest node name, so the bug cannot be masked again. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The eviction e2e test only validated that the VMI was deleted and recreated, but did not check that the guest node was actually drained. Add an assertion that the guest node is marked unschedulable (cordoned) before the VMI finalizer is removed. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…ction Signed-off-by: Nahshon Unna Tsameret <nunnatsa@redhat.com>
…node-name Bug fix: use guest node name when draining node on VM eviction
Bump golang to v1.25 Bump K8s API to v0.35 Bump CAPI API to v1.12 Bump Kubevirt to v1.8.0 Bump all other dependencies Signed-off-by: Nahshon Unna Tsameret <nunnatsa@redhat.com>
Bump golang + CAPI API to v1.12
…l state When a KubeVirt VM is stopped (runStrategy changed to Halted), the VMI reaches a finalized state and IsTerminal() correctly sets FailureReason on the KubevirtMachine. However, when the VM is started back (runStrategy changed to Always), IsTerminal() returns false but the FailureReason/FailureMessage fields are never cleared. This causes the CAPI Machine phase to stay stuck at "Failed" even though all Machine conditions (Ready, InfrastructureReady, NodeHealthy) are True. Downstream consumers that rely on the Machine phase (such as HyperShift's endpointslice reconciler) then permanently mark endpoints as not ready, breaking ingress into hosted clusters. The fix adds an else clause to nil out FailureReason and FailureMessage when IsTerminal() returns false, allowing VMs to properly recover. Signed-off-by: Enrique Llorente <ellorent@redhat.com>
…reason-on-recovery fix: clear FailureReason/FailureMessage when VM recovers from terminal state
|
@nunnatsa: This pull request references Jira Issue OCPBUGS-66890, which is invalid:
Comment The bug has been updated to refer to the pull request using the external bug tracker. DetailsIn response to this:
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. |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: nunnatsa The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Signed-off-by: Nahshon Unna Tsameret <nunnatsa@redhat.com>
|
/jira refresh |
|
@nunnatsa: This pull request references Jira Issue OCPBUGS-66890, which is invalid:
Comment DetailsIn response to this:
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. |
|
/jira refresh |
|
@nunnatsa: This pull request references Jira Issue OCPBUGS-66890, which is valid. 3 validation(s) were run on this bug
No GitHub users were found matching the public email listed for the QA contact in Jira (yinzhou@redhat.com), skipping review request. DetailsIn response to this:
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. |
|
/retest |
|
/test e2e-hypershift-kubevirt |
|
/lgtm |
|
/verified by e2e CI |
|
@orenc1: This PR has been marked as verified by DetailsIn response to this:
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. |
|
@nunnatsa: Jira Issue Verification Checks: Jira Issue OCPBUGS-66890 Jira Issue OCPBUGS-66890 has been moved to the MODIFIED state and will move to the VERIFIED state when the change is available in an accepted nightly payload. 🕓 DetailsIn response to this:
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. |
|
@nunnatsa: all tests passed! Full PR test history. Your PR dashboard. DetailsInstructions 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. |
|
/cherry-pick release-4.22 |
|
@nunnatsa: new pull request created: #453 DetailsIn response to this:
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. |
|
/retittle OCPBUGS-77929,OCPBUGS-66890: Sync upstream main 2026-04-23 |
|
/jira refresh |
|
@qinqon: Jira Issue OCPBUGS-66890 is in an unrecognized state (ON_QA) and will not be moved to the MODIFIED state. DetailsIn response to this:
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. |
|
/retitle OCPBUGS-77929,OCPBUGS-66890: Sync upstream main 2026-04-23 |
|
@nunnatsa: Jira Issue Verification Checks: Jira Issue OCPBUGS-77929 Jira Issue OCPBUGS-77929 has been moved to the MODIFIED state and will move to the VERIFIED state when the change is available in an accepted nightly payload. 🕓 Jira Issue OCPBUGS-66890 is in an unrecognized state (ON_QA) and will not be moved to the MODIFIED state. DetailsIn response to this:
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. |
|
/jira refresh |
|
@qinqon: Jira Issue OCPBUGS-77929 is in an unrecognized state (MODIFIED) and will not be moved to the MODIFIED state. Jira Issue OCPBUGS-66890 is in an unrecognized state (ON_QA) and will not be moved to the MODIFIED state. DetailsIn response to this:
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. |
Release notes: