|
38 | 38 | fail-fast: false |
39 | 39 | matrix: |
40 | 40 | name: [pytest-gpu-acc-nvidia, pytest-gpu-omp-amd] |
41 | | - test_examples: |
42 | | - - examples/seismic/tti/tti_example.py |
43 | | - - examples/seismic/acoustic/acoustic_example.py |
44 | | - - examples/seismic/viscoacoustic/viscoacoustic_example.py |
45 | | - - examples/seismic/viscoelastic/viscoelastic_example.py |
46 | | - - examples/seismic/elastic/elastic_example.py |
| 41 | + test_examples: ["examples/seismic/tti/tti_example.py examples/seismic/acoustic/acoustic_example.py examples/seismic/viscoacoustic/viscoacoustic_example.py examples/seismic/viscoelastic/viscoelastic_example.py examples/seismic/elastic/elastic_example.py"] |
47 | 42 |
|
48 | 43 | include: |
49 | 44 | # -------------------- NVIDIA job -------------------- |
@@ -159,17 +154,16 @@ jobs: |
159 | 154 | docker run ${{ matrix.flags }} --env DEVITO_MPI=1 "${DOCKER_IMAGE}" \ |
160 | 155 | mpiexec -n 2 pytest ${{ matrix.test_examples }} |
161 | 156 |
|
162 | | - - name: Clean up test image |
| 157 | + - name: Builder & image cleanup (keep 3 days of cache) |
163 | 158 | if: always() |
164 | 159 | run: | |
165 | | - # Remove only the image we just built |
| 160 | + # Remove only the test image we built |
166 | 161 | docker rmi -f "${DOCKER_IMAGE}" || true |
167 | 162 |
|
168 | | - # Guard global prune the layers we created |
169 | | - # (label ci-run=$GITHUB_RUN_ID) |
| 163 | + # Classic image layers created in this job |
170 | 164 | docker image prune -f --filter label=ci-run=$GITHUB_RUN_ID |
171 | 165 |
|
172 | | - docker builder prune -f --filter "name=$RUNNER_NAME" --filter "until=168h" |
173 | | -
|
174 | | - # May be overkill - commented out for now but left here as a reminder |
175 | | - # docker buildx rm $RUNNER_NAME || true |
| 166 | + # BuildKit cache: target the per-runner builder explicitly |
| 167 | + docker builder prune --builder "$RUNNER_NAME" \ |
| 168 | + -f \ |
| 169 | + --filter "until=72h" |
0 commit comments