On Thu, Jul 30, 2026 at 01:05:36PM +0200, Dumitru Ceara wrote: > On 7/30/26 12:47 PM, Mairtin O'Loingsigh wrote: > > On Thu, Jul 30, 2026 at 12:03:23PM +0200, Dumitru Ceara wrote: > >> Due to https://github.com/actions/runner-images/issues/14473 our CI is > >> currently permafailing because podman containers (used by the various > >> workflows) fail to run due to the stale crun version installed in > >> /usr/bin/crun. > >> > >> Other people facing this issue have decided to use as workaround > >> manually specifying the podman runtime, e.g.: > >> > >> OCI_RUNTIME=$(command -v crun) > >> podman --runtime "$OCI_RUNTIME" run ... > >> > >> That doesn't really work nicely for us because docker and podman are not > >> compatible at that level (docker would need additional configuration) > >> and, at least theoretically, our CI is generic and could be run with > >> both docker or podman. > >> > >> Instead, manually install the correct crun version (1.28) in > >> /usr/bin/crun. We did this before to workaround GitHub runner > >> issues: > >> > >> cbf4fc86a195 ("ci: Update crun in GitHub actions runner.") > >> > >> Signed-off-by: Dumitru Ceara <[email protected]> > >> --- > >> .ci/linux-util.sh | 12 ++++++++++++ > >> .github/workflows/ovn-fake-multinode-tests.yml | 11 +++++++++++ > >> .github/workflows/ovn-upgrade-tests.yml | 5 +++++ > >> .github/workflows/test.yml | 10 ++++++++++ > >> 4 files changed, 38 insertions(+) > >> > >> diff --git a/.ci/linux-util.sh b/.ci/linux-util.sh > >> index b5bd1f8c9c..0b42aae9d4 100755 > >> --- a/.ci/linux-util.sh > >> +++ b/.ci/linux-util.sh > >> @@ -49,3 +49,15 @@ function disable_apparmor() > >> sudo aa-teardown || true > >> sudo systemctl disable --now apparmor.service > >> } > >> + > >> +# XXX This should be removed when the following issue is fixed and the > >> +# correct crun version is packaged into the runner image. > >> +# https://github.com/actions/runner-images/issues/14473 > >> +function fixup_crun() > >> +{ > >> + crun --version > >> + sudo curl -L > >> "https://github.com/containers/crun/releases/download/1.28/crun-1.28-linux-amd64" > >> \ > >> + -o /usr/bin/crun > >> + sudo chmod +x /usr/bin/crun > >> + echo "New crun version: "$(crun --version) > >> +} > >> diff --git a/.github/workflows/ovn-fake-multinode-tests.yml > >> b/.github/workflows/ovn-fake-multinode-tests.yml > >> index 0294d89699..edb9646940 100644 > >> --- a/.github/workflows/ovn-fake-multinode-tests.yml > >> +++ b/.github/workflows/ovn-fake-multinode-tests.yml > >> @@ -68,6 +68,12 @@ jobs: > >> disable_apparmor > >> working-directory: ovn-fake-multinode/ovn > >> > >> + - name: Fixup crun > >> + run: | > >> + . .ci/linux-util.sh > >> + fixup_crun > >> + working-directory: ovn-fake-multinode/ovn > >> + > >> - name: Build ovn-fake-multi-node ${{ matrix.cfg.branch }} image > >> run: | > >> set -x > >> @@ -132,6 +138,11 @@ jobs: > >> . .ci/linux-util.sh > >> disable_apparmor > >> > >> + - name: Fixup crun > >> + run: | > >> + . .ci/linux-util.sh > >> + fixup_crun > >> + > >> - name: Free up disk space > >> run: | > >> . .ci/linux-util.sh > >> diff --git a/.github/workflows/ovn-upgrade-tests.yml > >> b/.github/workflows/ovn-upgrade-tests.yml > >> index 8dc1bf7ee9..e1117ed271 100644 > >> --- a/.github/workflows/ovn-upgrade-tests.yml > >> +++ b/.github/workflows/ovn-upgrade-tests.yml > >> @@ -59,6 +59,11 @@ jobs: > >> . .ci/linux-util.sh > >> disable_apparmor > >> > >> + - name: Fixup crun > >> + run: | > >> + . .ci/linux-util.sh > >> + fixup_crun > >> + > >> - name: Download container > >> run: sudo podman pull ghcr.io/ovn-org/ovn-tests:ubuntu > >> > >> diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml > >> index 64073b228a..d08f7fdac4 100644 > >> --- a/.github/workflows/test.yml > >> +++ b/.github/workflows/test.yml > >> @@ -47,6 +47,11 @@ jobs: > >> . .ci/linux-util.sh > >> disable_apparmor > >> > >> + - name: Fixup crun > >> + run: | > >> + . .ci/linux-util.sh > >> + fixup_crun > >> + > >> - name: Choose image distro > >> if: github.event_name == 'push' || github.event_name == > >> 'pull_request' > >> run: | > >> @@ -171,6 +176,11 @@ jobs: > >> . .ci/linux-util.sh > >> disable_apparmor > >> > >> + - name: Fixup crun > >> + run: | > >> + . .ci/linux-util.sh > >> + fixup_crun > >> + > >> - name: image cache > >> id: image_cache > >> uses: actions/cache@v5 > > > > Hi, > > > > Hi Mairtin, > > Thanks for the review! > > > Change looks good to me, should this also be applied to containers.yml ? > > > > I think you're probably right, I missed that part. We do install podman > in containers.yml, let's fix up crun there too. > > > Acked-by: Mairtin O'Loingsigh <[email protected]> > > > > Still running tests but would you be OK with me squashing this in if the > tests pass? > > diff --git a/.github/workflows/containers.yml > b/.github/workflows/containers.yml > index 16a869b955..b178091e5b 100644 > --- a/.github/workflows/containers.yml > +++ b/.github/workflows/containers.yml > @@ -34,6 +34,11 @@ jobs: > . .ci/linux-util.sh > fix_etc_hosts > > + - name: Fixup crun > + run: | > + . .ci/linux-util.sh > + fixup_crun > + > - name: Set up QEMU > uses: docker/setup-qemu-action@v2 > > --- > Thanks, > Dumitru >
Yes, I am fine with you squashing this and applying once tests pass. Regards, Mairtin _______________________________________________ dev mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-dev
