Skip to content

Commit 70e0ce8

Browse files
committed
Add ci.yaml to the cache key for ci.yaml
Changes to the workflow should also trigger a full run, ignoring the cache.
1 parent 2095bc9 commit 70e0ce8

File tree

2 files changed

+32
-32
lines changed

2 files changed

+32
-32
lines changed

.github/workflows/ci.md

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -29,24 +29,24 @@ This currently will re-save on success or failure, but only on a cache miss (sou
2929

3030
#### `ucm_local_bin`
3131
A built `ucm` is cached in `ucm_local_bin` after a successful build and Haskell tests pass.
32-
- The **cache key** includes the os, `stack.yaml`, any `package.yaml`, and any `.hs` file.
32+
- The **cache key** includes the os, this workflow, `stack.yaml`, any `package.yaml`, and any `.hs` file.
3333
- On an exact cache hit, these steps are skipped, otherwise they are run:
34-
- restore `.stack`
35-
- restore `.stack-work`
36-
- install `stack`
37-
- build `ucm` dependencies
38-
- build `ucm`
39-
- `unison-cli` tests
40-
- `unison-core` tests
41-
- `unison-parser-typechecker` tests
42-
- `unison-sqlite` tests
43-
- `unison-syntax` tests
44-
- `unison-util-bytes` tests
45-
- `unison-util-cache` tests
46-
- `unison-util-relation` tests
47-
- `cli-integration-tests`
48-
- verification of `stack ghci` startup
49-
- `interpreter-tests.md`
34+
- restore `.stack`
35+
- restore `.stack-work`
36+
- install `stack`
37+
- build `ucm` dependencies
38+
- build `ucm`
39+
- `unison-cli` tests
40+
- `unison-core` tests
41+
- `unison-parser-typechecker` tests
42+
- `unison-sqlite` tests
43+
- `unison-syntax` tests
44+
- `unison-util-bytes` tests
45+
- `unison-util-cache` tests
46+
- `unison-util-relation` tests
47+
- `cli-integration-tests`
48+
- verification of `stack ghci` startup
49+
- `interpreter-tests.md`
5050

5151
#### `unison_src_test_results`
5252
A bit is cached in `unison_src_test_results` after non-Haskell tests in the `unison` repo pass.
@@ -65,24 +65,24 @@ No steps are skipped on a cache hit; however, a second `pull` will mostly be a n
6565
JIT sources are cached in `jit_src_scheme` if the `generate-jit-source` job completes.
6666
- The **cache key** includes the version of Racket, and the release version of `@unison/internal`.
6767
- If the cache contains `{data-info, boot-generated, simple-wrappers, builtin-generated, compound-wrappers}.ss`, then these steps are skipped, otherwise they are run:
68-
- "create transcript" to produce pull `@unison/internal` and run `generateSchemeBoot`.
69-
- download `ucm artifact` saved in the previous step
70-
- set `ucm` permissions
71-
- checkout `unison` repo, which includes some static scheme and racket files.
72-
- run the previously generated transcript
68+
- "create transcript" to produce pull `@unison/internal` and run `generateSchemeBoot`.
69+
- download `ucm artifact` saved in the previous step
70+
- set `ucm` permissions
71+
- checkout `unison` repo, which includes some static scheme and racket files.
72+
- run the previously generated transcript
7373
- If all steps succeed, the `jit_src_scheme` cache is saved.
7474

7575
#### `jit_dist`
7676
JIT binaries are cached in `jit_dist` if the `build-jit-binary` job completes.
7777
- The **cache key** includes the version of Racket, and the release version of `@unison/internal`.
7878
- On an exact cache hit, these steps are skipped, otherwise they are run:
79-
- Restore Racket dependencies
80-
- setup Racket
81-
- restore apt cache (Linux only)
82-
- download jit source from previous job
83-
- use `raco` to build jit binary
84-
- download `ucm` artifact from previous job
85-
- set `ucm` permissions
86-
- restore `base` codebase saved in previous job
87-
- jit integration test
79+
- Restore Racket dependencies
80+
- setup Racket
81+
- restore apt cache (Linux only)
82+
- download jit source from previous job
83+
- use `raco` to build jit binary
84+
- download `ucm` artifact from previous job
85+
- set `ucm` permissions
86+
- restore `base` codebase saved in previous job
87+
- jit integration test
8888
- If all of these steps succeed, the `jit_dist` cache is saved.

.github/workflows/ci.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ jobs:
7272
uses: actions/cache@d4323d4df104b026a6aa633fdb11d772146be0bf # v4
7373
with:
7474
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/integrationtests/IntegrationTests/*')}}
7676
# added the integration test dependencies here as if they were source, for simplicity
7777

7878
- name: restore stack caches

0 commit comments

Comments
 (0)