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,

Change looks good to me, should this also be applied to containers.yml ?

Acked-by: Mairtin O'Loingsigh <[email protected]>

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to