Skip to content

Commit 5e806d5

Browse files
committed
restore tectonic caching
1 parent 404d255 commit 5e806d5

File tree

4 files changed

+829
-808
lines changed

4 files changed

+829
-808
lines changed

.github/workflows/job.test.yml

Lines changed: 31 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ env:
2929
JULIA_NUM_THREADS: 2
3030
# this repo
3131
## increase this value to reset all caches
32-
CACHE_EPOCH: 7
33-
## keep in sync with `pixi.toml#/$schema`
34-
PIXI_VERSION: 0.43.3
32+
CACHE_EPOCH: 8
33+
## TODO: keep in sync with `pixi.toml#/$schema`
34+
PIXI_VERSION: 0.44.0
3535
## add `-v` to see more inputs/outputs
3636
PIXI_RUN: pixi run --no-install --locked
3737

@@ -49,12 +49,11 @@ jobs:
4949
- name: Cache node_modules
5050
uses: actions/cache@v4
5151
with:
52-
enableCrossOsArchive: true
5352
path: |
5453
!node_modules/.cache/
5554
**/node_modules/
5655
key: |
57-
${{ env.CACHE_EPOCH }}-node-build-${{ hashFiles('pixi.lock', 'yarn.lock') }}
56+
${{ env.CACHE_EPOCH }}-node-${{ hashFiles('pixi.lock', 'yarn.lock') }}
5857
- name: Install nodejs dependencies
5958
run: ${{ env.PIXI_RUN }} setup-js && touch node_modules/.ci-skip-yarn
6059
- name: Build all intermediates
@@ -87,7 +86,7 @@ jobs:
8786
!node_modules/.cache/
8887
**/node_modules/
8988
key: |
90-
${{ env.CACHE_EPOCH }}-node-build-${{ hashFiles('pixi.lock', 'yarn.lock') }}
89+
${{ env.CACHE_EPOCH }}-node-${{ hashFiles('pixi.lock', 'yarn.lock') }}
9190
- name: Install nodejs dependencies
9291
run: ${{ env.PIXI_RUN }} setup-js && echo "" > node_modules/.ci-skip-yarn
9392

@@ -109,7 +108,7 @@ jobs:
109108
!node_modules/.cache/
110109
**/node_modules/
111110
key: |
112-
${{ env.CACHE_EPOCH }}-node-build-${{ hashFiles('pixi.lock', 'yarn.lock') }}
111+
${{ env.CACHE_EPOCH }}-node-${{ hashFiles('pixi.lock', 'yarn.lock') }}
113112
- name: Apply source formatting
114113
run: ${{ env.PIXI_RUN }} fix
115114
- name: Run source checks
@@ -136,7 +135,7 @@ jobs:
136135
!node_modules/.cache/
137136
**/node_modules/
138137
key: |
139-
${{ env.CACHE_EPOCH }}-node-build-${{ hashFiles('pixi.lock', 'yarn.lock') }}
138+
${{ env.CACHE_EPOCH }}-node-${{ hashFiles('pixi.lock', 'yarn.lock') }}
140139
- run: ${{ env.PIXI_RUN }} docs
141140
- uses: actions/upload-artifact@v4
142141
with:
@@ -169,16 +168,17 @@ jobs:
169168
uses: actions/download-artifact@v4
170169
with:
171170
name: jplsp-${{ github.run_number }}-dist
171+
# cache
172172
- name: Cache node_modules
173173
uses: actions/cache@v4
174174
with:
175-
enableCrossOsArchive: true
176175
path: |
177176
!node_modules/.cache/
178177
**/node_modules/
179178
key: |
180-
${{ env.CACHE_EPOCH }}-node-build-${{ hashFiles('pixi.lock', 'yarn.lock') }}
181-
- name: Cache julia
179+
${{ env.CACHE_EPOCH }}-node-${{ hashFiles('pixi.lock', 'yarn.lock') }}
180+
# setup
181+
- name: Cache julia language server packages
182182
uses: actions/cache@v4
183183
with:
184184
path: |
@@ -192,9 +192,11 @@ jobs:
192192
- name: |-
193193
Install PyPI distributions for integration testing (epoch: ${{ matrix.epoch }})
194194
run: ${{ env.PIXI_RUN }} --skip-deps itest-${{ matrix.epoch }}-uv
195+
# itest
195196
- name: |
196197
Run integration tests (epoch: ${{ matrix.epoch }})
197198
run: ${{ env.PIXI_RUN }} --skip-deps itest-${{ matrix.epoch }}
199+
# reporting
198200
- if: always()
199201
name: Publish browser test output
200202
uses: actions/upload-artifact@v4
@@ -229,29 +231,42 @@ jobs:
229231
uses: actions/download-artifact@v4
230232
with:
231233
name: jplsp-${{ github.run_number }}-dist
234+
# caches
232235
- name: Cache node_modules
233236
uses: actions/cache@v4
234237
with:
235-
enableCrossOsArchive: true
236238
path: |
237239
!node_modules/.cache/
238240
**/node_modules/
239241
key: |
240-
${{ env.CACHE_EPOCH }}-node-build-${{ hashFiles('pixi.lock', 'yarn.lock') }}
241-
- name: Cache julia
242+
${{ env.CACHE_EPOCH }}-node-${{ hashFiles('pixi.lock', 'yarn.lock') }}
243+
- name: Cache julia language server packages
242244
uses: actions/cache@v4
243245
with:
244246
path: |
245247
.pixi/envs/atest-${{ matrix.epoch }}/share/julia
246248
key: |
247-
${{ env.CACHE_EPOCH }}-julia-atest-${{ matrix.epoch }}-${{ matrix.os }}-${{ hashFiles('pixi.lock') }}
249+
${{ env.CACHE_EPOCH }}-atest-julia-${{ matrix.epoch }}-${{ matrix.os }}-${{ hashFiles('pixi.lock') }}
250+
- name: Cache tex packages
251+
uses: actions/cache@v4
252+
with:
253+
path: |
254+
build/.cache/tectonic
255+
key: |
256+
${{ env.CACHE_EPOCH }}-tex-${{ matrix.epoch }}-${{ matrix.os }}-${{ hashFiles('pixi.lock', 'atest/_examples/example.tex') }}
257+
# preflight, separated for log clarity
248258
- if: matrix.epoch != 'min'
249259
name: |
250260
Set up julia for acceptance test (epoch: ${{ matrix.epoch }})
251261
run: ${{ env.PIXI_RUN }} --skip-deps atest-${{ matrix.epoch }}-setup-julia
262+
- if: matrix.epoch != 'min'
263+
name: |
264+
Set up tex for acceptance test (epoch: ${{ matrix.epoch }})
265+
run: ${{ env.PIXI_RUN }} --skip-deps --environment atest-${{ matrix.epoch }} tectonic-cache--
252266
- name: |-
253267
Install PyPI distributions for acceptance testing (epoch: ${{ matrix.epoch }})
254268
run: ${{ env.PIXI_RUN }} --skip-deps atest-${{ matrix.epoch }}-uv
269+
# atest
255270
- name: |-
256271
Run acceptance tests until first failure, ignore failure (epoch: ${{ matrix.epoch }})
257272
continue-on-error: true
@@ -271,6 +286,7 @@ jobs:
271286
ATEST_ATTEMPT: 2
272287
ATEST_RETRIES: 3
273288
run: ${{ env.PIXI_RUN }} --skip-deps atest-${{ matrix.epoch }}
289+
# reporting
274290
- if: always()
275291
name: Summarize acceptance test results
276292
run: ${{ env.PIXI_RUN }} -e atest-${{ matrix.epoch }} ci-summary-atest

0 commit comments

Comments
 (0)