Skip to content

CORENET-5972: Consume openvswitch-ipsec systemd service for OVN IPsec deployment - #2662

Merged
openshift-merge-bot[bot] merged 4 commits into
openshift:masterfrom
pperiyasamy:use-openvswitch-ipsec-systemd-service
Jul 30, 2026
Merged

CORENET-5972: Consume openvswitch-ipsec systemd service for OVN IPsec deployment#2662
openshift-merge-bot[bot] merged 4 commits into
openshift:masterfrom
pperiyasamy:use-openvswitch-ipsec-systemd-service

Conversation

@pperiyasamy

@pperiyasamy pperiyasamy commented Mar 10, 2025

Copy link
Copy Markdown
Member

This ipsec machine config extension is now installing openvswitch3.5-ipsec package on the node, so this PR consumes that package to configure, enable and start openvswitch-ipsec systemd service which basically moves away running ovs-monitor-ipsec process from container to host.

It fixes following issues.

  1. Getting rid of running host binaries inside ovn-ipsec container, for example addconn which depends on glibc which creates version incompatibility issues between host and container.
  2. There is no need for patching auto=start parameter into each IPsec connections which is introduced by the PR OCPBUGS-52280, SDN-5330: Add ipsec connect wait service machine-config-operator#4854.
  3. The ovs-monitor-ipsec is now solving auth problem while using default crypto policies loaded by libreswan on the host.

In order to consume openvswitch-ipsec systemd service, this PR does the following:

  1. Stop spawning ovs-monitor-ipsec as foreground process in the ovn-ipsec container. Instead setup required IPsec configuration parameters in the /etc/sysconfig/openvswitch file, enable and start the openvswitch-ipsec service
    on the host. This is done at the time when ovn-ipsec-host pod is coming up for the first time. For the pod restart scenarios, it just checks openvswitch-ipsec service is running on the host, otherwise exit from the container with error.

  2. Keep running an ovn-ipsec container that waits for the ovs-monitor-ipsec.log file to be created, monitors the openvswitch-ipsec service health, and redirects /var/log/openvswitch/ovs-monitor-ipsec.log to the ovn-ipsec container's stdout console. The container fails if the systemd service stops unexpectedly, ensuring
    proper pod lifecycle management.

  3. There is no necessity of doing ipsec state and policy cleanup in ovn-ipsec-cleanup container when OVN IPsec is handled via openvswitch-ipsec systemd service.

  4. During the OCP upgrade, the new ipsec os extension takes a while to deploy with openvswitch3.5-ipsec package, so by the time ovn-ipsec-host daemonset is rendered, we need to handle that scenario by running ovs-monitor-ipsec in the container. So this PR is also considering the transition phase of the process that is moving
    from container to host.

  5. The ovn-keys init container configures ovs with IPsec certificate paths, so the container uses same host directory path to store and configure ovs with certificates because the ovs-monitor-ipsec process is running on the host now.

/assign @igsilya

Summary by CodeRabbit

Release Notes

  • Bug Fixes

    • Improved IPsec certificate/key regeneration so the IPsec service restarts more reliably.
    • Enhanced coordination between the IPsec components in the pod and the host IPsec service for smoother startup and clean shutdown.
  • Refactor

    • Updated IPsec asset storage and runtime configuration to use host-backed paths for more consistent behavior.
    • Refined volume mounts and command checks so health/liveness operations rely on the host IPsec tooling when available.

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/machine-config-operator#4854 openshift/os#1718 openshift/machine-config-operator#4878 openshift/ovn-kubernetes#2472

2 similar comments
@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/machine-config-operator#4854 openshift/os#1718 openshift/machine-config-operator#4878 openshift/ovn-kubernetes#2472

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/machine-config-operator#4854 openshift/os#1718 openshift/machine-config-operator#4878 openshift/ovn-kubernetes#2472

@pperiyasamy

Copy link
Copy Markdown
Member Author

The testwith doesn't take openshift/os#1718 changes, ipsec os extension is still not installing openvswitch-ipsec package, so we must get 1718 landed first for testing CNO changes.

@igsilya

igsilya commented Mar 11, 2025

Copy link
Copy Markdown

@pperiyasamy I agree, we should get OVS 3.5 first into rhcos / ovn-k / microshift. We can install openvswitch3.5-ipsec at the same time, it should not be a problem since the service is disabled until CNO activates it. We need OVS 3.5 either way for other purposes (rhel 10 support, for example). Once we have OVS 3.5 and the openvswitch-ipsec service we can more easily test CNO and other changes.

@pperiyasamy pperiyasamy changed the title Consume openvswitch-ipsec systemd service for OVN IPsec deployment SDN-5330: Consume openvswitch-ipsec systemd service for OVN IPsec deployment Mar 11, 2025
@openshift-ci-robot openshift-ci-robot added the jira/valid-reference Indicates that this PR references a valid Jira ticket of any type. label Mar 11, 2025
@openshift-ci-robot

openshift-ci-robot commented Mar 11, 2025

Copy link
Copy Markdown
Contributor

@pperiyasamy: This pull request references SDN-5330 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 "4.19.0" version, but no target version was set.

Details

In response to this:

The ovn-ipsec-host daemonset pod currently spins up ovs-monitor-ipsec process to configure IPsec connections with the peer nodes. This would make ipsec connections to be established for the existing nodes a bit later after kubelet is started at the time node/service restart scenario, but by the time workloads are scheduled on the node started hitting traffic drops because of unavailability of IPsec connections between nodes. This makes IPsec jobs in CI so unstable and monitor jobs always failing during IPsec upgrade.

The FDP story (https://issues.redhat.com/browse/FDP-1051) gets openvswitch-ipsec systemd service (runs ovs-monitor-ipsec) with required configurable parameters, It's available with OVS 3.5 version. So this commit does the following.

  1. Stop spawning ovs-monitor-ipsec as foreground process in the ovn-ipsec container, Instead setup required IPsec configuration parameters in the /etc/sysconfig/openvswitch file, enable and start the openvswitch-ipsec service on the host. This is done at the of when ovn-ipsec-host pod is coming up for the first time, for the pod restart scenarios, it just checks openvswitch-ipsec service is running on the host, otherwise exit from the container with error. There would an update with mcp PR OCPBUGS-52280, SDN-5330: Add ipsec connect wait service machine-config-operator#4854 to make openvswitch-ipsec service is started before kubelet.

  2. Keep running an ovn-ipsec container and redirects /var/log/openvswitch/ovs-monitor-ipsec.log to the ovn-ipsec container's stdout console.

  3. There is no necessity of having ovn-ipsec-cleanup container anymore with openvswitch-ipsec service as it's going to handle OVN IPsec states appropriately.

Depends on: openshift/os#1718.

/assign @igsilya

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.

@pperiyasamy
pperiyasamy force-pushed the use-openvswitch-ipsec-systemd-service branch from 51fb402 to 70f121e Compare March 17, 2025 12:22
@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/machine-config-operator#4854 openshift/os#1718 openshift/machine-config-operator#4878 openshift/ovn-kubernetes#2472

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/os#1718 openshift/machine-config-operator#4878 openshift/ovn-kubernetes#2472

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/ovn-kubernetes#2472 openshift/machine-config-operator#4878

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-serial openshift/ovn-kubernetes#2472 openshift/machine-config-operator#4878

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/ovn-kubernetes#2472 openshift/machine-config-operator#4878

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-serial openshift/ovn-kubernetes#2472 openshift/machine-config-operator#4878

@pperiyasamy
pperiyasamy force-pushed the use-openvswitch-ipsec-systemd-service branch from 45b106a to 555d31c Compare April 10, 2025 08:52
@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-upgrade openshift/ovn-kubernetes#2472 openshift/machine-config-operator#4878

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-ipsec-serial openshift/ovn-kubernetes#2472 openshift/machine-config-operator#4878

@pperiyasamy

Copy link
Copy Markdown
Member Author

/assign @anuragthehatter @huiran0826

@pperiyasamy
pperiyasamy force-pushed the use-openvswitch-ipsec-systemd-service branch from 555d31c to 5b0839a Compare April 14, 2025 10:04
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-ovn-upgrade-ipsec
/test e2e-gcp-ovn-techpreview

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-aws-ovn-fdp-qe
/test e2e-aws-ovn-hypershift-conformance
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-aws-ovn-upgrade
/test e2e-aws-ovn-windows
/test e2e-azure-ovn-upgrade
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-dualstack-bgp
/test e2e-metal-ipi-ovn-dualstack-bgp-local-gw
/test e2e-metal-ipi-ovn-ipv6
/test e2e-metal-ipi-ovn-ipv6-ipsec
/test e2e-ovn-ipsec-step-registry
/test hypershift-e2e-aks

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/ovn-kubernetes/main/5.0-upgrade-from-stable-4.22/e2e-aws-ovn-upgrade-ipsec openshift/ovn-kubernetes#3254 openshift/machine-config-operator#4878

@pperiyasamy

Copy link
Copy Markdown
Member Author

/testwith openshift/cluster-network-operator/master/e2e-aws-ovn-serial-ipsec openshift/machine-config-operator#4878

@igsilya

igsilya commented Jul 16, 2026

Copy link
Copy Markdown

@pperiyasamy I didn't test this code and I'm not an expert in pod lifecycles, but the change seems correct to me. There is a ton of fallback code for the old behavior, which I hope can be removed in 5.1 (users can't upgrade to 5.1 without upgrading to 5.0 first, right?). Otherwise,
/lgtm

Comment thread bindata/network/ovn-kubernetes/common/ipsec-host.yaml Outdated
Comment thread bindata/network/ovn-kubernetes/common/ipsec-host.yaml Outdated
Comment on lines +286 to +287
# Store initial PID for liveness probe to detect service restarts
cp /var/run/openvswitch/ovs-monitor-ipsec.pid /tmp/ovs-monitor-ipsec-base.pid

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.

I guess I would do something like this:

              # Capture PID and InvocationID atomically, verify no restart occurred
              invocation_id=$(chroot /proc/1/root systemctl show -p InvocationID --value openvswitch-ipsec)
              main_pid=$(chroot /proc/1/root systemctl show -p MainPID --value openvswitch-ipsec)
              file_pid=$(cat /var/run/openvswitch/ovs-monitor-ipsec.pid 2>/dev/null)
              if [ "$main_pid" != "$file_pid" ]; then
                echo "openvswitch-ipsec PID mismatch: systemd reports $main_pid, PID file has $file_pid"
                exit 1
              fi
              echo "$main_pid" > /tmp/ovs-monitor-ipsec-base.pid

              while true; do
                chroot /proc/1/root journalctl -f "_SYSTEMD_INVOCATION_ID=$invocation_id" -n all
                echo "journalctl exited unexpectedly, retrying..."
                sleep 2
              done

So we capture invocation_id and pid right away, to frame what service run we are monitoring.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

nice, updated it.

@pperiyasamy
pperiyasamy force-pushed the use-openvswitch-ipsec-systemd-service branch from 0417732 to b757a12 Compare July 17, 2026 12:56

@jcaamano jcaamano 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.

small nit, otherwise lgtm

file_pid=$(cat /var/run/openvswitch/ovs-monitor-ipsec.pid 2>/dev/null)
main_pid=$(cat /tmp/ovs-monitor-ipsec-main.pid)
if [ "$main_pid" != "$file_pid" ]; then
echo "openvswitch-ipsec PID mismatch: systemd reports $main_pid, PID file has $file_pid"

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.

I would keep the original message you had here

@pperiyasamy
pperiyasamy force-pushed the use-openvswitch-ipsec-systemd-service branch from b757a12 to cd84c22 Compare July 17, 2026 13:48
Comment on lines -341 to -344
- mountPath: /usr/sbin
name: usr-sbin
- mountPath: /usr/libexec
name: usr-libexec

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Hmm. The code still supports both modes - systemd on the host or ovs-monitor-ipsec daemon inside the container. But if we do not mount these, then ovs-monitor-ipsec inside the container will use ipsec command from the inside of the container that is potentially incompatible with the pluto running on the host. Is that right? Should the mounts be preserved until the fallback code is removed?

@jcaamano jcaamano Jul 17, 2026

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.

I guess this comment is inline with the comment here

Also if we manage to keep the fallback working with commits Remove /usr/sbin host directory dependency from ovn-ipsec-host pod and Remove /usr/libexec mount and avoid GLIBC compatibility issues I don't understand why we need anything else.

I talked with @pperiyasamy offline and what I understood is this is picking between two evils: either we live RHEL10 glibc problems or we live with our host/container protocol problems and he chose the latter as the most unlikely. Please @pperiyasamy confirm.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

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

yes, mounting /usr/sbin also broke with chroot command (which pod uses it heavily) due to glibc compatibility issues. so had to get rid of mounting host /usr/sbin directory completely.

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.

And I guess this would be the only thing that would work in an hypothetical RHEL9 -> RHEL10 upgrade case, which I am not sure its a thing.

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Yeah, I see, it's hard to actually have both cases 100% working without doing terrible things inside the container like building a separate chroot or something. Since RHEL10 is TP in 5.0, I suppose, sacrificing the 4.x RHEL 9 -> 5.0 RHEL 10 upgrade path is more reasonable than having breakages in common cases. May need some documentation around that, but otherwise sounds fine to me.

The consumption of openvswitch-ipsec systemd service from the host for the
ovn-ipsec-host deployment helps to avoid using any host binaries to be
running from ovn-ipsec container, so it solves protocol, glibc and hardware
compatibility issues when RHEL10 is supported for OCP platforms.

Hence this commit does the following:

1. Stop spawning ovs-monitor-ipsec as foreground process in the ovn-ipsec
container. Instead setup required IPsec configuration parameters in the
/etc/sysconfig/openvswitch file, enable and start the openvswitch-ipsec service
on the host. This is done at the time when ovn-ipsec-host pod is coming up
for the first time. For the pod restart scenarios, it just checks
openvswitch-ipsec service is running on the host, otherwise exit from the
container with error.

2. Keep running an ovn-ipsec container that waits for the ovs-monitor-ipsec.log
file to be created, monitors the openvswitch-ipsec service health, and redirects
/var/log/openvswitch/ovs-monitor-ipsec.log to the ovn-ipsec container's stdout
console. The container fails if the systemd service stops unexpectedly, ensuring
proper pod lifecycle management.

3. There is no necessity of doing ipsec state and policy cleanup in ovn-ipsec-cleanup
container when OVN IPsec is handled via openvswitch-ipsec systemd service.

4. During the OCP upgrade, the new ipsec os extension takes a while to deploy with
openvswitch3.5-ipsec package, so by the time ovn-ipsec-host daemonset is rendered,
we need to handle that scenario by running ovs-monitor-ipsec in the container.
So this commit is also considering the transition phase of the process that is moving
from container to host.

5. The ovn-keys init container configures ovs with IPsec certificate paths, so the
container uses same host directory path to store and configure ovs with certificates
because the ovs-monitor-ipsec process is running on the host now.

Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
This commit removes the mount of /usr/sbin from the host to eliminate
need for host binaries. it would make chroot to use container binary
which avoids GLIBC compatibility issue.

The 'ipsec --checknss' check is removed, it doesn't run during
upgrade until openvswitch3.5-ipsec is deployed to the node anyway,
so it's safe to skip during that transition period.

The liveness probe now uses 'ovs-appctl -t ovs-monitor-ipsec ipsec/status'
instead of 'ipsec whack --trafficstatus' to check for configured IPsec
tunnels without requiring host binaries.

Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
During OCP upgrade the new ovn-ipsec-host pod is rendered before the machine
config rolls out openvswitch3.5-ipsec package to node. This causes the
container to fall back to running ovs-monitor-ipsec in the container, but
mounting host's /usr/libexec shadows container binaries and causes GLIBC
compatibility errors (GLIBC_ABI_DT_RELR not found) when executing binaries
like addconn and platform-python.

- Remove /usr/libexec host mount entirely as it's no longer needed.
- Use container's /usr/libexec/platform-python binary to run ovs-monitor-ipsec
script.
- Remove addconn validation as /etc/ipsec.conf is managed by ovs-monitor-ipsec
and wait-for-ipsec-connect service, so it is always syntactically correct.
- Remove _stackmanager check as it's obsolete (removed in libreswan 5.3+) and OCP
must be using this version since 4.19.

Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
Signed-off-by: Periyasamy Palanisamy <pepalani@redhat.com>
@pperiyasamy
pperiyasamy force-pushed the use-openvswitch-ipsec-systemd-service branch from cd84c22 to 9de83fa Compare July 20, 2026 16:37
@jcaamano

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 24, 2026
@openshift-merge-bot

Copy link
Copy Markdown
Contributor

Scheduling required tests:
/test e2e-aws-ovn-upgrade-ipsec
/test e2e-gcp-ovn-techpreview

Scheduling tests matching the pipeline_run_if_changed or not excluded by pipeline_skip_if_only_changed parameters:
/test e2e-aws-ovn-fdp-qe
/test e2e-aws-ovn-hypershift-conformance
/test e2e-aws-ovn-serial-1of2
/test e2e-aws-ovn-serial-2of2
/test e2e-aws-ovn-upgrade
/test e2e-aws-ovn-windows
/test e2e-azure-ovn-upgrade
/test e2e-gcp-ovn
/test e2e-gcp-ovn-upgrade
/test e2e-metal-ipi-ovn-dualstack-bgp
/test e2e-metal-ipi-ovn-dualstack-bgp-local-gw
/test e2e-metal-ipi-ovn-ipv6
/test e2e-metal-ipi-ovn-ipv6-ipsec
/test e2e-ovn-ipsec-step-registry
/test hypershift-e2e-aks

@openshift-ci

openshift-ci Bot commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: igsilya, jcaamano, pperiyasamy

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

@openshift-ci openshift-ci Bot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Jul 24, 2026
@jcaamano

Copy link
Copy Markdown
Contributor

/retest

@mkowalski

Copy link
Copy Markdown
Contributor

/retest-required

@mkowalski

Copy link
Copy Markdown
Contributor

/verified by CI

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

Copy link
Copy Markdown
Contributor

@mkowalski: 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.

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@pperiyasamy: 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/4.19-upgrade-from-stable-4.18-e2e-azure-ovn-upgrade fd6e0e3 link false /test 4.19-upgrade-from-stable-4.18-e2e-azure-ovn-upgrade
ci/prow/4.19-upgrade-from-stable-4.18-e2e-aws-ovn-upgrade fd6e0e3 link false /test 4.19-upgrade-from-stable-4.18-e2e-aws-ovn-upgrade
ci/prow/4.19-upgrade-from-stable-4.18-e2e-gcp-ovn-upgrade fd6e0e3 link false /test 4.19-upgrade-from-stable-4.18-e2e-gcp-ovn-upgrade
ci/prow/e2e-aws-ovn-ipsec-serial c5ac366 link false /test e2e-aws-ovn-ipsec-serial
ci/prow/e2e-vsphere-ovn-dualstack-primaryv6 c5ac366 link false /test e2e-vsphere-ovn-dualstack-primaryv6
ci/prow/e2e-aws-ovn-serial c5ac366 link false /test e2e-aws-ovn-serial
ci/prow/4.20-upgrade-from-stable-4.19-e2e-aws-ovn-upgrade c5ac366 link false /test 4.20-upgrade-from-stable-4.19-e2e-aws-ovn-upgrade
ci/prow/e2e-aws-hypershift-ovn-kubevirt c5ac366 link false /test e2e-aws-hypershift-ovn-kubevirt
ci/prow/4.20-upgrade-from-stable-4.19-e2e-azure-ovn-upgrade c5ac366 link false /test 4.20-upgrade-from-stable-4.19-e2e-azure-ovn-upgrade
ci/prow/e2e-aws-ovn-rhcos10-techpreview e2ac0e5 link false /test e2e-aws-ovn-rhcos10-techpreview
ci/prow/5.0-upgrade-from-stable-4.22-e2e-aws-ovn-upgrade 9de83fa link false /test 5.0-upgrade-from-stable-4.22-e2e-aws-ovn-upgrade
ci/prow/5.0-upgrade-from-stable-4.22-e2e-azure-ovn-upgrade 9de83fa link false /test 5.0-upgrade-from-stable-4.22-e2e-azure-ovn-upgrade
ci/prow/5.0-upgrade-from-stable-4.22-e2e-gcp-ovn-upgrade 9de83fa link false /test 5.0-upgrade-from-stable-4.22-e2e-gcp-ovn-upgrade

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.

@openshift-merge-bot

Copy link
Copy Markdown
Contributor

/retest-required

Remaining retests: 0 against base HEAD 4431b5c and 2 for PR HEAD 9de83fa in total

@mkowalski

Copy link
Copy Markdown
Contributor

/override-sticky ci/prow/e2e-aws-ovn-upgrade-ipsec
/override-sticky ci/prow/e2e-aws-ovn-fdp-qe
/override-sticky ci/prow/e2e-metal-ipi-ovn-dualstack-bgp-local-gw

@openshift-ci

openshift-ci Bot commented Jul 30, 2026

Copy link
Copy Markdown
Contributor

@mkowalski: Overrode contexts on behalf of mkowalski: ci/prow/e2e-aws-ovn-fdp-qe, ci/prow/e2e-aws-ovn-upgrade-ipsec, ci/prow/e2e-metal-ipi-ovn-dualstack-bgp-local-gw

These overrides will persist across retests on the current HEAD SHA. Pushing a new commit will clear them. Use /override-cancel to remove them.

Details

In response to this:

/override-sticky ci/prow/e2e-aws-ovn-upgrade-ipsec
/override-sticky ci/prow/e2e-aws-ovn-fdp-qe
/override-sticky ci/prow/e2e-metal-ipi-ovn-dualstack-bgp-local-gw

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.

@openshift-merge-bot
openshift-merge-bot Bot merged commit 7ca03ed into openshift:master Jul 30, 2026
27 of 30 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. 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.

9 participants