@@ -32,9 +32,40 @@ permissions:
32
32
contents : read
33
33
34
34
jobs :
35
+ cache-data :
36
+ runs-on : ' ubuntu-latest'
37
+ steps :
38
+ - name : Install the latest version of uv
39
+ uses : astral-sh/setup-uv@v5
40
+ - name : Install datalad
41
+ run : |
42
+ uvx datalad-installer --sudo ok git-annex
43
+ uv tool install --with=datalad-osf --with=datalad-next datalad
44
+ uv tool install --with=datalad-next datalad-osf
45
+ datalad wtf
46
+ - uses : actions/cache@v4
47
+ id : test-data
48
+ with :
49
+ path : /home/runner/nifreeze-tests/
50
+ key : data-v1
51
+ restore-keys : |
52
+ data-v1
53
+ data-v0
54
+ - name : Get test data with DataLad
55
+ if : steps.test-data.outputs.cache-hit != 'true'
56
+ run : |
57
+ if [[ ! -d "${TEST_DATA_HOME}" ]]; then
58
+ datalad install -rg --source=https://gin.g-node.org/nipreps-data/tests-nifreeze.git ${TEST_DATA_HOME}
59
+ else
60
+ cd ${TEST_DATA_HOME}
61
+ datalad update --merge -r .
62
+ datalad get -r -J4 *
63
+ fi
64
+
35
65
stable :
36
66
# Unit tests only on Linux/Python 3.12
37
67
runs-on : ' ubuntu-latest'
68
+ needs : ['cache-data']
38
69
steps :
39
70
- uses : actions/checkout@v4
40
71
with :
@@ -56,20 +87,12 @@ jobs:
56
87
- uses : actions/cache/restore@v4
57
88
with :
58
89
path : /home/runner/nifreeze-tests/
59
- key : data-v0
60
- - name : Get test data with DataLad
90
+ key : data-v1
91
+ - name : Update test data
61
92
run : |
62
- if [[ ! -d "${TEST_DATA_HOME}" ]]; then
63
- datalad install -rg --source=https://gin.g-node.org/nipreps-data/tests-nifreeze.git ${TEST_DATA_HOME}
64
- else
65
- cd ${TEST_DATA_HOME}
66
- datalad update --merge -r .
67
- datalad get -r -J4 *
68
- fi
69
- - uses : actions/cache/save@v4
70
- with :
71
- path : /home/runner/nifreeze-tests/
72
- key : data-v0
93
+ cd ${TEST_DATA_HOME}
94
+ datalad update --merge -r .
95
+ datalad get -r -J4 *
73
96
- name : Install TeX Live
74
97
run : |
75
98
sudo apt-get update
0 commit comments