|
45 | 45 | with: |
46 | 46 | fetch-depth: 0 |
47 | 47 |
|
| 48 | + # The env vars ACTIONS_CACHE_SERVICE_V2, ACTIONS_RESULTS_URL, and ACTIONS_RUNTIME_TOKEN |
| 49 | + # are exposed by this action. |
| 50 | + - name: Enable sccache |
| 51 | + uses: mozilla-actions/sccache-action@7d986dd989559c6ecdb630a3fd2557667be217ad # 0.0.9 |
| 52 | + |
| 53 | + # xref: https://github.com/orgs/community/discussions/42856#discussioncomment-7678867 |
| 54 | + - name: Adding addtional GHA cache-related env vars |
| 55 | + uses: actions/github-script@v7 |
| 56 | + with: |
| 57 | + script: | |
| 58 | + core.exportVariable('ACTIONS_CACHE_URL', process.env['ACTIONS_CACHE_URL']) |
| 59 | + core.exportVariable('ACTIONS_RUNTIME_URL', process.env['ACTIONS_RUNTIME_URL']) |
| 60 | +
|
48 | 61 | - name: Setup proxy cache |
49 | 62 | uses: nv-gha-runners/setup-proxy-cache@main |
50 | 63 | continue-on-error: true |
@@ -129,9 +142,27 @@ jobs: |
129 | 142 | CIBW_ENVIRONMENT_LINUX: > |
130 | 143 | CUDA_PATH=/host/${{ env.CUDA_PATH }} |
131 | 144 | CUDA_PYTHON_PARALLEL_LEVEL=${{ env.CUDA_PYTHON_PARALLEL_LEVEL }} |
| 145 | + CC="/host/${{ env.SCCACHE_PATH }} cc" |
| 146 | + CXX="/host/${{ env.SCCACHE_PATH }} c++" |
| 147 | + SCCACHE_GHA_ENABLED=true |
| 148 | + ACTIONS_RUNTIME_TOKEN=${{ env.ACTIONS_RUNTIME_TOKEN }} |
| 149 | + ACTIONS_RUNTIME_URL=${{ env.ACTIONS_RUNTIME_URL }} |
| 150 | + ACTIONS_RESULTS_URL=${{ env.ACTIONS_RESULTS_URL }} |
| 151 | + ACTIONS_CACHE_URL=${{ env.ACTIONS_CACHE_URL }} |
| 152 | + ACTIONS_CACHE_SERVICE_V2=${{ env.ACTIONS_CACHE_SERVICE_V2 }} |
| 153 | + SCCACHE_DIR=/host/${{ env.SCCACHE_DIR }} |
| 154 | + SCCACHE_CACHE_SIZE=${{ env.SCCACHE_CACHE_SIZE }} |
132 | 155 | CIBW_ENVIRONMENT_WINDOWS: > |
133 | 156 | CUDA_PATH="$(cygpath -w ${{ env.CUDA_PATH }})" |
134 | 157 | CUDA_PYTHON_PARALLEL_LEVEL=${{ env.CUDA_PYTHON_PARALLEL_LEVEL }} |
| 158 | + # check cache stats before leaving cibuildwheel |
| 159 | + CIBW_BEFORE_TEST_LINUX: > |
| 160 | + "/host/${{ env.SCCACHE_PATH }}" --show-stats |
| 161 | + # force the test stage to be run (so that before-test is not skipped) |
| 162 | + # TODO: we might want to think twice on adding this, it does a lot of |
| 163 | + # things before reaching this command. |
| 164 | + CIBW_TEST_COMMAND: > |
| 165 | + echo "ok!" |
135 | 166 |
|
136 | 167 | - name: List the cuda.bindings artifacts directory |
137 | 168 | run: | |
@@ -167,11 +198,29 @@ jobs: |
167 | 198 | CUDA_PYTHON_PARALLEL_LEVEL=${{ env.CUDA_PYTHON_PARALLEL_LEVEL }} |
168 | 199 | CUDA_CORE_BUILD_MAJOR=${{ env.BUILD_CUDA_MAJOR }} |
169 | 200 | PIP_FIND_LINKS=/host/${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }} |
| 201 | + CC="/host/${{ env.SCCACHE_PATH }} cc" |
| 202 | + CXX="/host/${{ env.SCCACHE_PATH }} c++" |
| 203 | + SCCACHE_GHA_ENABLED=true |
| 204 | + ACTIONS_RUNTIME_TOKEN=${{ env.ACTIONS_RUNTIME_TOKEN }} |
| 205 | + ACTIONS_RUNTIME_URL=${{ env.ACTIONS_RUNTIME_URL }} |
| 206 | + ACTIONS_RESULTS_URL=${{ env.ACTIONS_RESULTS_URL }} |
| 207 | + ACTIONS_CACHE_URL=${{ env.ACTIONS_CACHE_URL }} |
| 208 | + ACTIONS_CACHE_SERVICE_V2=${{ env.ACTIONS_CACHE_SERVICE_V2 }} |
| 209 | + SCCACHE_DIR=/host/${{ env.SCCACHE_DIR }} |
| 210 | + SCCACHE_CACHE_SIZE=${{ env.SCCACHE_CACHE_SIZE }} |
170 | 211 | CIBW_ENVIRONMENT_WINDOWS: > |
171 | 212 | CUDA_PATH="$(cygpath -w ${{ env.CUDA_PATH }})" |
172 | 213 | CUDA_PYTHON_PARALLEL_LEVEL=${{ env.CUDA_PYTHON_PARALLEL_LEVEL }} |
173 | 214 | CUDA_CORE_BUILD_MAJOR=${{ env.BUILD_CUDA_MAJOR }} |
174 | 215 | PIP_FIND_LINKS="$(cygpath -w ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }})" |
| 216 | + # check cache stats before leaving cibuildwheel |
| 217 | + CIBW_BEFORE_TEST_LINUX: > |
| 218 | + "/host${{ env.SCCACHE_PATH }}" --show-stats |
| 219 | + # force the test stage to be run (so that before-test is not skipped) |
| 220 | + # TODO: we might want to think twice on adding this, it does a lot of |
| 221 | + # things before reaching this command. |
| 222 | + CIBW_TEST_COMMAND: > |
| 223 | + echo "ok!" |
175 | 224 |
|
176 | 225 | - name: List the cuda.core artifacts directory and rename |
177 | 226 | run: | |
@@ -330,11 +379,29 @@ jobs: |
330 | 379 | CUDA_PYTHON_PARALLEL_LEVEL=${{ env.CUDA_PYTHON_PARALLEL_LEVEL }} |
331 | 380 | CUDA_CORE_BUILD_MAJOR=${{ env.BUILD_PREV_CUDA_MAJOR }} |
332 | 381 | PIP_FIND_LINKS=/host/${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }} |
| 382 | + CC="/host/${{ env.SCCACHE_PATH }} cc" |
| 383 | + CXX="/host/${{ env.SCCACHE_PATH }} c++" |
| 384 | + SCCACHE_GHA_ENABLED=true |
| 385 | + ACTIONS_RUNTIME_TOKEN=${{ env.ACTIONS_RUNTIME_TOKEN }} |
| 386 | + ACTIONS_RUNTIME_URL=${{ env.ACTIONS_RUNTIME_URL }} |
| 387 | + ACTIONS_RESULTS_URL=${{ env.ACTIONS_RESULTS_URL }} |
| 388 | + ACTIONS_CACHE_URL=${{ env.ACTIONS_CACHE_URL }} |
| 389 | + ACTIONS_CACHE_SERVICE_V2=${{ env.ACTIONS_CACHE_SERVICE_V2 }} |
| 390 | + SCCACHE_DIR=/host/${{ env.SCCACHE_DIR }} |
| 391 | + SCCACHE_CACHE_SIZE=${{ env.SCCACHE_CACHE_SIZE }} |
333 | 392 | CIBW_ENVIRONMENT_WINDOWS: > |
334 | 393 | CUDA_PATH="$(cygpath -w ${{ env.CUDA_PATH }})" |
335 | 394 | CUDA_PYTHON_PARALLEL_LEVEL=${{ env.CUDA_PYTHON_PARALLEL_LEVEL }} |
336 | 395 | CUDA_CORE_BUILD_MAJOR=${{ env.BUILD_PREV_CUDA_MAJOR }} |
337 | 396 | PIP_FIND_LINKS="$(cygpath -w ${{ env.CUDA_BINDINGS_ARTIFACTS_DIR }})" |
| 397 | + # check cache stats before leaving cibuildwheel |
| 398 | + CIBW_BEFORE_TEST_LINUX: > |
| 399 | + "/host${{ env.SCCACHE_PATH }}" --show-stats |
| 400 | + # force the test stage to be run (so that before-test is not skipped) |
| 401 | + # TODO: we might want to think twice on adding this, it does a lot of |
| 402 | + # things before reaching this command. |
| 403 | + CIBW_TEST_COMMAND: > |
| 404 | + echo "ok!" |
338 | 405 |
|
339 | 406 | - name: List the cuda.core artifacts directory and rename |
340 | 407 | run: | |
|
0 commit comments