|
72 | 72 | uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4 |
73 | 73 | with: |
74 | 74 | path: ${{env.ucm_local_bin}} |
75 | | - key: ucm-${{ matrix.os }}-${{ hashFiles('**/stack.yaml', '**/package.yaml', '**/*.hs', '**/unison-cli-integration/integrationtests/IntegrationTests/*')}} |
| 75 | + key: ucm-${{ matrix.os }}-${{ hashFiles('**/ci.yaml', '**/stack.yaml', '**/package.yaml', '**/*.hs', '**/unison-cli-integration/integration-tests/IntegrationTests/*')}} |
76 | 76 | # added the integration test dependencies here as if they were source, for simplicity |
77 | 77 |
|
78 | 78 | - name: restore stack caches |
@@ -174,6 +174,13 @@ jobs: |
174 | 174 | path: ${{ env.ucm }} |
175 | 175 | if-no-files-found: error |
176 | 176 |
|
| 177 | + - name: save built binaries |
| 178 | + uses: actions/upload-artifact@4cec3d8aa04e39d1a68397de0c4cd6fb9dce8ec1 # v4 |
| 179 | + with: |
| 180 | + path: ${{ env.ucm_local_bin }} |
| 181 | + name: local-bin-${{ matrix.os }} |
| 182 | + if-no-files-found: error |
| 183 | + |
177 | 184 | - name: save stack caches |
178 | 185 | if: | |
179 | 186 | !cancelled() |
@@ -230,12 +237,15 @@ jobs: |
230 | 237 | path: ${{env.transcript_test_results}} |
231 | 238 | key: transcripts-results-${{ matrix.os }}-${{ hashFiles('**/stack.yaml', '**/package.yaml', '**/*.hs')}}-${{ hashFiles('**/unison-src/**/*.md', '**/unison-src/**/*.u') }} |
232 | 239 | - name: restore binaries |
233 | | - uses: actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # v4 |
| 240 | + uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4 |
234 | 241 | if: steps.cache-transcript-test-results.outputs.cache-hit != 'true' |
235 | 242 | with: |
236 | 243 | path: ${{env.ucm_local_bin}} |
237 | | - key: ucm-${{ matrix.os }}-${{ hashFiles('**/stack.yaml', '**/package.yaml', '**/*.hs')}} |
238 | | - fail-on-cache-miss: true |
| 244 | + name: local-bin-${{matrix.os}} |
| 245 | + if-no-files-found: error |
| 246 | + - name: set built binaries permissions |
| 247 | + if: steps.cache-transcript-test-results.outputs.cache-hit != 'true' |
| 248 | + run: chmod +x ${{env.ucm_local_bin}}/* |
239 | 249 | # One of the transcripts fails if the user's git name hasn't been set. |
240 | 250 | ## (Which transcript? -AI) |
241 | 251 | - name: set git user info |
@@ -324,12 +334,15 @@ jobs: |
324 | 334 | key: runtime-tests-codebase-${{env.runtime_tests_causalhash}} |
325 | 335 | restore-keys: runtime-tests-codebase- |
326 | 336 | - name: restore binaries |
327 | | - uses: actions/cache/restore@d4323d4df104b026a6aa633fdb11d772146be0bf # v4 |
328 | | - if: steps.cache-interpreter-test-results.outputs.cache-hit != 'true' |
| 337 | + uses: actions/download-artifact@cc203385981b70ca67e1cc392babf9cc229d5806 # v4 |
| 338 | + if: steps.cache-transcript-test-results.outputs.cache-hit != 'true' |
329 | 339 | with: |
330 | 340 | path: ${{env.ucm_local_bin}} |
331 | | - key: ucm-${{ matrix.os }}-${{ hashFiles('**/stack.yaml', '**/package.yaml', '**/*.hs')}} |
332 | | - fail-on-cache-miss: true |
| 341 | + name: local-bin-${{ matrix.os }} |
| 342 | + if-no-files-found: error |
| 343 | + - name: set binaries permissions |
| 344 | + if: steps.cache-transcript-test-results.outputs.cache-hit != 'true' |
| 345 | + run: chmod +x ${{env.ucm_local_bin}}/* |
333 | 346 | - name: interpreter tests |
334 | 347 | # this one should be re-run if the ucm binaries have changed or unison-src/ has changed |
335 | 348 | if: steps.cache-interpreter-test-results.outputs.cache-hit != 'true' |
|
0 commit comments