Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 13 additions & 1 deletion .github/actions/setup-sccache/configure.sh
Original file line number Diff line number Diff line change
Expand Up @@ -312,7 +312,19 @@
unset SCCACHE_GCS_BUCKET SCCACHE_GCS_RW_MODE SCCACHE_GCS_KEY_PREFIX
fi

"${SCCACHE_BIN}" --start-server
if startup_output="$("${SCCACHE_BIN}" --start-server 2>&1)"; then
printf '%s\n' "${startup_output}"
else
startup_status=$?
printf '%s\n' "${startup_output}" >&2
if [[ "${startup_output}" != *"Timed out waiting for server startup"* ]]; then
exit "${startup_status}"
fi
# The startup client can time out just before its job-local daemon becomes
# ready. The existing statistics request must still succeed and prove the
# selected backend; a timeout alone never admits an unavailable cache.
echo "::warning::sccache startup client timed out; checking daemon readiness"

Check failure on line 326 in .github/actions/setup-sccache/configure.sh

View workflow job for this annotation

GitHub Actions / unresolved-review-threads / unresolved-review-threads

unresolved P1 review thread

.github/actions/setup-sccache/configure.sh:326 https://github.com/dx-corp/code/pull/1371#discussion_r4220353020

Check failure on line 326 in .github/actions/setup-sccache/configure.sh

View workflow job for this annotation

GitHub Actions / unresolved-review-threads / unresolved-review-threads

unresolved P1 review thread

.github/actions/setup-sccache/configure.sh:326 https://github.com/dx-corp/code/pull/1371#discussion_r4220353020
Comment on lines +323 to +326

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P1 Badge Require a daemon connection before accepting the timeout

When --start-server times out because backend initialization never completes, this branch continues on the assumption that --show-stats proves daemon readiness. However, the sccache v0.17.0 used by setup-rust explicitly synthesizes mostly empty statistics when it cannot connect to a server and exits successfully; it also derives the reported cache location from the configuration, so the checks below can pass with no daemon running (sccache v0.17.0 source). The setup action then succeeds, but subsequent compiler invocations can repeatedly attempt and fail to start the missing daemon. Use a probe that fails unless it connects to the job's UDS, or retry until that socket accepts a connection before suppressing the startup error.

Useful? React with 👍 / 👎.

fi
stats="$("${SCCACHE_BIN}" --show-stats)"
printf '%s\n' "${stats}"

Expand Down
6 changes: 3 additions & 3 deletions .repository-projection.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,11 @@
"projection": "deixic-code",
"projectionSchemaVersion": 1,
"sourceRepository": "dx-corp/mono",
"sourceSha": "e6fc0d7e3edaf452595a759b6068a7b6b8a07c5e",
"sourceSha": "871bfe3ec25bd3506fe2725b8a893bb372a30928",
"destinationRepository": "dx-corp/code",
"priorProjectedBase": "59963d0eb6062542fc4f6802e8a11e6725f8fec0",
"priorProjectedBase": "ab0c9ce0cfe05d6ac5519333466b87b03fa11a0c",
"definitionDigest": "cb9d429542ebb0a2de9b42a7aad60d9d8696a648ceba47c30f05c0b285ca0db7",
"toolDigest": "c9112982c70b80737d8faac67d58b06d55bde0dc297eb1009c1b02296f34f4a9",
"contentDigest": "7d0b40b2203b92852cc182cdc8f4b0f4731b4a4874656b5e548e0f987fc0464a",
"contentDigest": "880c2ccbeadddda04e3edcfcd39e25a881ef94e89baca25c58c3d4af9b9a66bb",
"publicationEligible": true
}
Loading