Skip to content

Commit 79f0c12

Browse files
author
Gunther Klessinger
committed
aggressive caching in workflows
1 parent 9785a4a commit 79f0c12

1 file changed

Lines changed: 60 additions & 0 deletions

File tree

.github/workflows/ci.yml

Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,14 @@ jobs:
2828
- name: Checkout code
2929
uses: actions/checkout@v4
3030

31+
- name: Cache apt packages
32+
uses: actions/cache@v4
33+
with:
34+
path: /var/cache/apt/archives
35+
key: ${{ runner.os }}-apt-${{ hashFiles('.github/workflows/ci.yml') }}
36+
restore-keys: |
37+
${{ runner.os }}-apt-
38+
3139
- name: Install system dependencies
3240
run: |
3341
sudo apt-get update
@@ -44,10 +52,22 @@ jobs:
4452
uses: astral-sh/setup-uv@v4
4553
with:
4654
version: "latest"
55+
enable-cache: true
4756

4857
- name: Install just
4958
uses: extractions/setup-just@v3
5059

60+
- name: Cache uv dependencies
61+
uses: actions/cache@v4
62+
with:
63+
path: |
64+
~/.cache/uv
65+
.venv
66+
key: ${{ runner.os }}-uv-${{ matrix.python-version }}-${{ hashFiles('pyproject.toml', 'uv.lock') }}
67+
restore-keys: |
68+
${{ runner.os }}-uv-${{ matrix.python-version }}-
69+
${{ runner.os }}-uv-
70+
5171
- name: Install dependencies
5272
run: uv sync
5373

@@ -71,6 +91,14 @@ jobs:
7191
with:
7292
fetch-depth: 0 # Fetch all history for git-changelog
7393

94+
- name: Cache apt packages
95+
uses: actions/cache@v4
96+
with:
97+
path: /var/cache/apt/archives
98+
key: ${{ runner.os }}-apt-${{ hashFiles('.github/workflows/ci.yml') }}
99+
restore-keys: |
100+
${{ runner.os }}-apt-
101+
74102
- name: Install system dependencies
75103
run: |
76104
sudo apt-get update
@@ -87,10 +115,22 @@ jobs:
87115
uses: astral-sh/setup-uv@v4
88116
with:
89117
version: "latest"
118+
enable-cache: true
90119

91120
- name: Install just
92121
uses: extractions/setup-just@v3
93122

123+
- name: Cache uv dependencies
124+
uses: actions/cache@v4
125+
with:
126+
path: |
127+
~/.cache/uv
128+
.venv
129+
key: ${{ runner.os }}-uv-3.11-${{ hashFiles('pyproject.toml', 'uv.lock') }}
130+
restore-keys: |
131+
${{ runner.os }}-uv-3.11-
132+
${{ runner.os }}-uv-
133+
94134
- name: Install dependencies
95135
run: uv sync
96136

@@ -119,6 +159,14 @@ jobs:
119159
- name: Checkout code
120160
uses: actions/checkout@v4
121161

162+
- name: Cache apt packages
163+
uses: actions/cache@v4
164+
with:
165+
path: /var/cache/apt/archives
166+
key: ${{ runner.os }}-apt-${{ hashFiles('.github/workflows/ci.yml') }}
167+
restore-keys: |
168+
${{ runner.os }}-apt-
169+
122170
- name: Install system dependencies
123171
run: |
124172
sudo apt-get update
@@ -135,10 +183,22 @@ jobs:
135183
uses: astral-sh/setup-uv@v4
136184
with:
137185
version: "latest"
186+
enable-cache: true
138187

139188
- name: Install just
140189
uses: extractions/setup-just@v3
141190

191+
- name: Cache uv dependencies
192+
uses: actions/cache@v4
193+
with:
194+
path: |
195+
~/.cache/uv
196+
.venv
197+
key: ${{ runner.os }}-uv-3.11-${{ hashFiles('pyproject.toml', 'uv.lock') }}
198+
restore-keys: |
199+
${{ runner.os }}-uv-3.11-
200+
${{ runner.os }}-uv-
201+
142202
- name: Install dependencies
143203
run: uv sync
144204

0 commit comments

Comments
 (0)