3030 shell : bash -l {0}
3131
3232 steps :
33- - uses : actions/checkout@v6
34-
35- - uses : dorny/paths-filter@v3
36- id : filter
37- with :
38- filters : |
39- src:
40- - 'scripts/**'
41- - 'rules/**'
42- - 'data/**'
43- - 'Snakefile'
44- - 'config/**'
45- - 'test/**'
46- - 'pixi.toml'
47- - 'pixi.lock'
48- - '.github/workflows/test.yaml'
49-
5033 - name : Free up disk space
5134 run : |
5235 echo "Initial disk space"
@@ -57,12 +40,10 @@ jobs:
5740 sudo docker builder prune -a --force
5841 echo "Final disk space"
5942 df -h
60- - name : Skip - no source changes
61- if : steps.filter.outputs.src != 'true' && github.event_name != 'schedule'
62- run : echo "Skipping tests because no source code changes detected"
43+
44+ - uses : actions/checkout@v6
6345
6446 - name : Setup Pixi
65- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
6647 uses : prefix-dev/setup-pixi@v0.9.3
6748 with :
6849 pixi-version : v0.59.0
@@ -72,60 +53,49 @@ jobs:
7253 environments : open-tyndp
7354
7455 - name : Setup cache keys
75- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
7656 run : |
7757 echo "WEEK=$(date +'%Y%U')" >> $GITHUB_ENV # data and cutouts
7858
79- - uses : actions/cache@v5
80- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
59+ - uses : actions/cache@v4
8160 with :
8261 path : |
8362 data
8463 cutouts
8564 key : data-cutouts-${{ env.WEEK }}
8665
87- - name : Restore git-tracked files in data/
88- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
89- run : git checkout HEAD -- data/
90-
9166 - name : Run pylint check on scripts
92- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
9367 # check for undefined variables to reuse functions across scripts
9468 run : |
9569 pixi run pylint --disable=all --enable=E0601,E0606 --output-format=parseable scripts/add_* scripts/prepare_* scripts/solve_*
9670
9771 - name : Run snakemake test workflows (sb)
98- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
9972 env :
10073 SNAKEMAKE_STORAGE_CACHED_HTTP_CACHE : " "
10174 SNAKEMAKE_STORAGE_CACHED_HTTP_SKIP_REMOTE_CHECKS : " 1"
10275 run : |
10376 pixi run -e open-tyndp tyndp-sb-test
10477
10578 - name : Run snakemake test workflows (cba)
106- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
10779 env :
10880 SNAKEMAKE_STORAGE_CACHED_HTTP_CACHE : " "
10981 SNAKEMAKE_STORAGE_CACHED_HTTP_SKIP_REMOTE_CHECKS : " 1"
11082 run : |
11183 pixi run -e open-tyndp tyndp-cba-test
11284
11385 - name : Run snakemake test workflows (upstream)
114- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
11586 env :
11687 SNAKEMAKE_STORAGE_CACHED_HTTP_CACHE : " "
11788 SNAKEMAKE_STORAGE_CACHED_HTTP_SKIP_REMOTE_CHECKS : " 1"
11889 run : |
11990 pixi run -e open-tyndp integration-tests
12091
12192 - name : Run unit tests
122- if : steps.filter.outputs.src == 'true' || github.event_name == 'schedule'
12393 run : |
12494 pixi run -e open-tyndp unit-tests
12595
12696 - name : Upload artifacts
12797 if : always()
128- uses : actions/upload-artifact@v6
98+ uses : actions/upload-artifact@v5
12999 with :
130100 name : results-${{ matrix.os }}
131101 path : |
0 commit comments