fix(ci): avoid leaking cache lock to MSBuild nodes [CI]
This commit is contained in:
1 parent
5594d1cc86
commit
fb9dc155f5
1 file changed
+3
-1
+3
-1
@@ -73,9 +73,11 @@ mkdir -p "$sqlite_cache_root/locks"
|
|||||||
# Stable cache paths let MSBuild reuse the SQLite amalgamation object between
|
# Stable cache paths let MSBuild reuse the SQLite amalgamation object between
|
||||||
# fresh Woodpecker workspaces. Lock per RID so overlapping retries cannot write
|
# fresh Woodpecker workspaces. Lock per RID so overlapping retries cannot write
|
||||||
# the same object concurrently; amd64 and arm64 builds remain parallel.
|
# the same object concurrently; amd64 and arm64 builds remain parallel.
|
||||||
|
# --close keeps the lock fd out of reusable MSBuild worker processes. Otherwise
|
||||||
|
# an idle node-reuse worker can inherit it and block later pipelines indefinitely.
|
||||||
(
|
(
|
||||||
cd "$root/backend"
|
cd "$root/backend"
|
||||||
flock -w 900 "$sqlite_cache_root/locks/$rid.lock" \
|
flock --close --wait 900 "$sqlite_cache_root/locks/$rid.lock" \
|
||||||
dotnet publish src/MoShiro.Backend \
|
dotnet publish src/MoShiro.Backend \
|
||||||
-m:8 -c Release -r "$rid" --self-contained true \
|
-m:8 -c Release -r "$rid" --self-contained true \
|
||||||
-p:DebugType=none -p:DebugSymbols=false \
|
-p:DebugType=none -p:DebugSymbols=false \
|
||||||
|
|||||||
Reference in new issue
Block a user