Skip to content

Commit c7584b2

Browse files
authored
Remove sccache (#5206)
* Remove sccache * CI docs
1 parent 12e891e commit c7584b2

File tree

2 files changed

+23
-15
lines changed

2 files changed

+23
-15
lines changed

.github/actions/common-setup/action.yml

-10
Original file line numberDiff line numberDiff line change
@@ -126,15 +126,6 @@ runs:
126126
path: ${{ github.workspace }}/build/llvm-project-install
127127
key: ${{ steps.cache-llvm.outputs.cache-primary-key }}
128128

129-
130-
# Run this after building llvm, it's pointless to fill the caches with
131-
# infrequent llvm build products
132-
- name: Set up sccache
133-
uses: mozilla-actions/sccache-action@v0.0.6
134-
# Opportunistically use sccache, it's not available for example on self
135-
# hosted runners or ARM
136-
continue-on-error: true
137-
138129
- name: Set environment variable for CMake and sccache
139130
shell: bash
140131
run: |
@@ -145,7 +136,6 @@ runs:
145136
146137
# Set CMake to use sccache if it's available
147138
if command -v sccache; then
148-
echo "SCCACHE_GHA_ENABLED=true" >> "$GITHUB_ENV"
149139
echo "CMAKE_CXX_COMPILER_LAUNCHER=sccache" >> "$GITHUB_ENV"
150140
echo "CMAKE_C_COMPILER_LAUNCHER=sccache" >> "$GITHUB_ENV"
151141
fi

docs/ci.md

+23-5
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,36 @@
11
# Our CI
22

3-
There are github actions for testing building and testing slang.
3+
There are github actions for building and testing slang.
44

55
## Tests
66

7-
Most configurations run a restricted set of tests, however on some self hosted runners we run the full test suite, as well as running Falcor's test suite with the new slang build.
7+
Most configurations run a restricted set of tests, however on some self hosted
8+
runners we run the full test suite, as well as running Falcor's test suite with
9+
the new slang build.
810

911
## Building LLVM
1012

11-
We require a static build of LLVM for building slang-llvm, we build and cache this in all workflow runs. Since this changes infrequently, the cache is almost always hit. A cold build takes about an hour on the slowest platform. The cached output is a few hundred MB, so conceivably if we add many more platforms we might be caching more than the 10GB github allowance, which would necessitate being a bit more complicated in building and tracking outputs here.
13+
We require a static build of LLVM for building slang-llvm, we build and cache
14+
this in all workflow runs. Since this changes infrequently, the cache is almost
15+
always hit. A cold build takes about an hour on the slowest platform. The
16+
cached output is a few hundred MB, so conceivably if we add many more platforms
17+
we might be caching more than the 10GB github allowance, which would
18+
necessitate being a bit more complicated in building and tracking outputs here.
1219

13-
For slang-llvm, this is handled the same as any other dependency, except on Windows Debug builds, where we are required by the differences in Debug/Release standard libraries to always make a release build, this is noted in the ci action yaml file.
20+
For slang-llvm, this is handled the same as any other dependency, except on
21+
Windows Debug builds, where we are required by the differences in Debug/Release
22+
standard libraries to always make a release build, this is noted in the ci
23+
action yaml file.
24+
25+
Note that we don't use sccache while building LLVM, as it changes very
26+
infrequently. The caching of LLVM is done by caching the final build product
27+
only.
1428

1529
## sccache
1630

17-
The CI actions use sccache, keyed on compiler and platform, this runs on all configurations and significantly speeds up small source change builds. This cache can be safely missed without a large impact on build times.
31+
> Due to reliability issues, we are not currently using sccache, this is
32+
> historical/aspirational.
1833
34+
The CI actions use sccache, keyed on compiler and platform, this runs on all
35+
configurations and significantly speeds up small source change builds. This
36+
cache can be safely missed without a large impact on build times.

0 commit comments

Comments
 (0)