GH-50991: [CI] Enable sccache just like ccache on Docker-based builds - #50992
Conversation
|
@github-actions crossbow submit -g python |
|
@github-actions crossbow submit wheellinuxcp314 |
|
|
|
Revision: ef5090a Submitted crossbow builds: ursacomputing/crossbow @ actions-1826ba0836 |
This comment was marked as outdated.
This comment was marked as outdated.
|
@github-actions crossbow submit wheelmanylinuxcp314 |
|
@github-actions crossbow submit -g ruby |
This comment was marked as outdated.
This comment was marked as outdated.
|
Revision: 3561c77 Submitted crossbow builds: ursacomputing/crossbow @ actions-cada341cec
|
|
@github-actions crossbow submit wheelmanylinuxcp314 |
3561c77 to
234136c
Compare
|
@github-actions crossbow submit wheelmanylinuxcp314 |
This comment was marked as outdated.
This comment was marked as outdated.
234136c to
b6c60bc
Compare
|
@github-actions crossbow submit wheelmanylinuxcp314 |
This comment was marked as outdated.
This comment was marked as outdated.
b6c60bc to
14269a9
Compare
|
@github-actions crossbow submit wheelmanylinuxcp314 |
|
Revision: b6c60bc Submitted crossbow builds: ursacomputing/crossbow @ actions-505a98c871
|
|
Revision: 14269a9 Submitted crossbow builds: ursacomputing/crossbow @ actions-896a507684
|
14269a9 to
b398bf0
Compare
|
@github-actions crossbow submit wheellinuxcp314 |
|
Revision: b398bf0 Submitted crossbow builds: ursacomputing/crossbow @ actions-853d2ba796 |
|
FYI, I have this (wheels building with sccache) working on a branch... but the branch is a bit messy (I used OIDC permissions instead of akey/skey). In case it's helpful: a few things that might be helpful, see:
And, other things I did:
There's a few things where I used OIDC to be ignored: AWS_SESSION_TOKEN and AWS_ROLE_ARN can be ignored, |
|
@github-actions crossbow submit -g ruby |
|
@github-actions crossbow submit -g r |
|
Revision: 37d53be Submitted crossbow builds: ursacomputing/crossbow @ actions-4c426b805e
|
This comment was marked as outdated.
This comment was marked as outdated.
| ulimits: *ulimits | ||
| environment: | ||
| <<: [*common, *ccache, *cpp] | ||
| <<: [*common, *ccache, *sccache, *cpp] |
There was a problem hiding this comment.
I didn't manage to check if this tracks, but my AI reviewer wrote:
ubuntu-cpp-bundled-offline sets ARROW_OFFLINE=ON. In ci/scripts/cpp_build.sh, this clears /etc/resolv.conf before compilation. With *sccache added, Crossbow supplies SCCACHE_BUCKET and CMake selects remote sccache instead of local ccache.
On its first compiler invocation, sccache verifies the S3 backend. With networking disabled, server startup fails and compilation exits rather than falling back. I reproduced this using sccache 0.12.0 against an unreachable S3 endpoint.
There was a problem hiding this comment.
Hmm, let's try it out then.
There was a problem hiding this comment.
Ok, you're right, it seems that sccache breaks under this scenario.
sccache: error: Server startup failed: cache storage failed to read: Unexpected (temporary) at read => send http request
Context:
url: https://s3.***.amazonaws.com/***/sccache/.sccache_check
called: http_util::Client::send
service: s3
path: .sccache_check
range: 0-
Source:
error sending request for url (https://s3.***.amazonaws.com/***/sccache/.sccache_check): client error (Connect): dns error: failed to lookup address information: Try again: failed to lookup address information: Try again
| secrets: *vcpkg-build-secrets | ||
| environment: | ||
| <<: [*common, *ccache] | ||
| <<: [*common, *ccache, *sccache] |
There was a problem hiding this comment.
I can only see ccache installed in ci/docker/cpp-jni.dockerfile, but no sccache, so this likely doesn't do much.
|
Thank you for your (s)(c)cache crusade @pitrou ! |
|
@github-actions crossbow submit -g cpp |
|
Revision: f5df088 Submitted crossbow builds: ursacomputing/crossbow @ actions-2cbd17ff51 |
…ready installed by base image This reverts commit 37d53be.
f5df088 to
3e9e9ef
Compare
|
@github-actions crossbow submit test-ubuntu-24.04-cpp-bundled-offline |
|
Revision: 3e9e9ef Submitted crossbow builds: ursacomputing/crossbow @ actions-6820ae6774
|
Rationale for this change
Enable sccache in more Docker-based builds on Crossbow CI, so as to make jobs faster and consume less resources.
Are these changes tested?
Yes, by existing Crossbow CI runs.
Example results:
Are there any user-facing changes?
No.