ci+tests: oakstorage Windows URIs, Linux hang watchdog, cache-on-failure

oakstorage: the sqlite URI parse tests used /tmp/lib.db, which is not
absolute on Windows, so parse_target's is_absolute check rejected it.
Pick the absolute path per platform (C:/tmp/lib.db on Windows).

ci (Linux): wrap the test step in a 1500 s watchdog — a deadlocked
test prints nothing and never fails; on timeout the watchdog dumps
every test/worker process's thread stacks with gdb and then kills the
suite. (One such hang already ate a run; the previous green run needed
~4 min.)

ci+cd: Swatinem/rust-cache gains cache-on-failure everywhere, so a
red run still saves its compile cache (the actions/cache FFmpeg cache
already saves in its post phase regardless of outcome).
This commit is contained in:
2026-08-21 18:48:38 +08:00
parent 9aab5623bf
commit d48b04da5a
3 changed files with 42 additions and 5 deletions
+4
View File
@@ -101,6 +101,7 @@ jobs:
uses: Swatinem/rust-cache@v2
with:
shared-key: oak-${{ matrix.distro }}
cache-on-failure: true
- name: Cache project FFmpeg
uses: actions/cache@v4
@@ -175,6 +176,7 @@ jobs:
uses: Swatinem/rust-cache@v2
with:
shared-key: oak-appimage
cache-on-failure: true
- name: Cache project FFmpeg
uses: actions/cache@v4
@@ -241,6 +243,7 @@ jobs:
uses: Swatinem/rust-cache@v2
with:
shared-key: oak-workspace
cache-on-failure: true
- name: Cache project FFmpeg
uses: actions/cache@v4
@@ -368,6 +371,7 @@ jobs:
uses: Swatinem/rust-cache@v2
with:
shared-key: oak-workspace
cache-on-failure: true
- name: Cache project FFmpeg
uses: actions/cache@v4