Commit b816508
[TASK] Run CI containers with docker
GitHub hosted runners ship both podman and docker. Their podman/crun
combination intermittently aborts the first container start of a job
with "OCI runtime error: crun: unknown version specified" (exit code
126). It hits any job, so which ones fail varies per run, and a rerun
on another host usually clears it.
runTests.sh prefers podman whenever it is present and only falls back
to docker. That default is correct for the script and is kept, since
podman-only machines are exactly what it is built for. The hosted
runners are the single place these workflows meet the broken
combination, so the override belongs in the workflow: every
"runTests.sh" call passes "-b docker" now, with the reasoning noted in
the workflow header so the flag can be dropped knowingly later.
Selecting docker exposes a second defect that podman masks. docker runs
the container as "--user $HOST_UID" with group 0, while the functional
sqlite tmpfs inherits the mode of its host mountpoint -- 0755 and owned
by root at the umask a runner uses. No test database can be created
then and every functional sqlite test fails with "unable to open
database file". Rootless podman is root inside its user namespace and
passes no "--user", which is why this never showed before. The tmpfs is
mounted with "mode=1777" now, which docker needs and podman does not
mind.1 parent c156e34 commit b816508
2 files changed
Lines changed: 22 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
2 | 12 | | |
3 | 13 | | |
4 | 14 | | |
| |||
41 | 51 | | |
42 | 52 | | |
43 | 53 | | |
44 | | - | |
| 54 | + | |
45 | 55 | | |
46 | 56 | | |
47 | | - | |
| 57 | + | |
48 | 58 | | |
49 | 59 | | |
50 | 60 | | |
| |||
79 | 89 | | |
80 | 90 | | |
81 | 91 | | |
82 | | - | |
| 92 | + | |
83 | 93 | | |
84 | 94 | | |
85 | 95 | | |
| |||
111 | 121 | | |
112 | 122 | | |
113 | 123 | | |
114 | | - | |
| 124 | + | |
115 | 125 | | |
116 | 126 | | |
117 | 127 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1104 | 1104 | | |
1105 | 1105 | | |
1106 | 1106 | | |
1107 | | - | |
| 1107 | + | |
| 1108 | + | |
| 1109 | + | |
| 1110 | + | |
| 1111 | + | |
| 1112 | + | |
| 1113 | + | |
| 1114 | + | |
1108 | 1115 | | |
1109 | 1116 | | |
1110 | 1117 | | |
| |||
0 commit comments