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
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