@@ -130,7 +130,7 @@ jobs:
130130 run : ${{ matrix.cmd }}
131131
132132 e2e-podman-rootless :
133- name : E2E (rust-podman-rootless , ${{ matrix.runner }})
133+ name : E2E (rust-podman-${{ matrix.suite }} , ${{ matrix.runner }})
134134 # Run directly on the Ubuntu host so the test observes the host's AppArmor
135135 # and unprivileged-user-namespace policy. A privileged job container masks
136136 # the restrictions that production rootless Podman installations enforce.
@@ -145,10 +145,18 @@ jobs:
145145 include :
146146 # Keep package versions explicit so hosted-runner tool overrides
147147 # cannot silently change the supported test environment.
148- - runner : ubuntu-26.04
148+ - suite : rootless
149+ runner : ubuntu-26.04
149150 podman_major : " 5"
150151 podman_package_version : " 5.7.0+ds2-3build1"
151152 conmon_package_version : " 2.1.13+ds1-2"
153+ cmd : " mise run --no-deps --skip-deps e2e:podman:rootless"
154+ - suite : external-driver
155+ runner : ubuntu-26.04
156+ podman_major : " 5"
157+ podman_package_version : " 5.7.0+ds2-3build1"
158+ conmon_package_version : " 2.1.13+ds1-2"
159+ cmd : " env -u OPENSHELL_GATEWAY_BIN mise run --no-deps --skip-deps e2e:podman:external-driver"
152160 env :
153161 IMAGE_TAG : ${{ inputs.image-tag }}
154162 MISE_GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
@@ -264,23 +272,28 @@ jobs:
264272 - name : Log in to GHCR with Podman
265273 run : echo "${{ secrets.GITHUB_TOKEN }}" | podman login ghcr.io -u "${{ github.actor }}" --password-stdin
266274
267- - name : Run rootless Podman E2E
268- run : mise run --no-deps --skip-deps e2e:podman:rootless
269-
270- - name : Run external Podman driver E2E
271- run : env -u OPENSHELL_GATEWAY_BIN mise run --no-deps --skip-deps e2e:podman:external-driver
275+ - name : Run Podman E2E
276+ run : ${{ matrix.cmd }}
272277
273278 - name : Print AppArmor denials
274279 if : always()
275280 run : sudo dmesg | grep -E 'apparmor=.*DENIED|profile="unprivileged_userns"' | tail -100 || true
276281
277282 e2e-vm :
278- name : E2E (rust-vm)
283+ name : E2E (rust-vm-${{ matrix.suite }} )
279284 # libkrun needs KVM, so this job must run directly on a GitHub-hosted
280285 # Linux VM. GitHub-hosted macOS runners do not support nested
281286 # virtualization, and a job container would hide the host KVM device.
282287 runs-on : ubuntu-24.04
283288 timeout-minutes : 90
289+ strategy :
290+ fail-fast : false
291+ matrix :
292+ include :
293+ - suite : managed
294+ cmd : " mise run --no-deps --skip-deps e2e:vm"
295+ - suite : external-driver
296+ cmd : " env -u OPENSHELL_GATEWAY_BIN mise run --no-deps --skip-deps e2e:vm:external-driver"
284297 env :
285298 GH_TOKEN : ${{ secrets.GITHUB_TOKEN }}
286299 MISE_GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
@@ -368,4 +381,4 @@ jobs:
368381 cache-on-failure : " true"
369382
370383 - name : Run VM E2E
371- run : env -u OPENSHELL_GATEWAY_BIN mise run --no-deps --skip-deps e2e:vm:external-driver
384+ run : ${{ matrix.cmd }}
0 commit comments