keep CLI units current during rebuilds
This commit is contained in:
@@ -84,14 +84,24 @@ rebuild_lock_pid=$!
|
||||
sleep 0.2
|
||||
sed -i 's/dependency-marker-b/dependency-marker-d/' "$source_dir/child.uce"
|
||||
started_at=$(date +%s%N)
|
||||
assert_marker parent dependency-marker-b
|
||||
http_during_lock=$(http_marker)
|
||||
elapsed_ms=$(( ($(date +%s%N) - started_at) / 1000000 ))
|
||||
if [[ "$http_during_lock" != *"dependency-marker-b"* ]]; then
|
||||
echo "HTTP request did not serve the last complete artifact during rebuild: $http_during_lock" >&2
|
||||
exit 1
|
||||
fi
|
||||
if (( elapsed_ms >= 2000 )); then
|
||||
echo "request waited ${elapsed_ms}ms for an active transitive rebuild" >&2
|
||||
echo "HTTP request waited ${elapsed_ms}ms for an active transitive rebuild" >&2
|
||||
exit 1
|
||||
fi
|
||||
started_at=$(date +%s%N)
|
||||
assert_marker parent dependency-marker-d
|
||||
elapsed_ms=$(( ($(date +%s%N) - started_at) / 1000000 ))
|
||||
if (( elapsed_ms < 2000 )); then
|
||||
echo "CLI request returned before the locked rebuild published the current artifact (${elapsed_ms}ms)" >&2
|
||||
exit 1
|
||||
fi
|
||||
wait "$rebuild_lock_pid"
|
||||
assert_marker parent dependency-marker-d
|
||||
|
||||
# Warm every configured worker, then replace the artifact while retaining its
|
||||
# whole-second mtime. The worker cache must notice the nanosecond/ctime change.
|
||||
|
||||
Reference in New Issue
Block a user