Skip to content

Commit ac75a36

Browse files
committed
ci: install into a project venv instead of --system
ubuntu-latest images now ship an externally-managed system Python (PEP 668), so 'uv pip install --system' refuses to install and the Validate workflow dies at the dependency step. Create the project venv from the matrix interpreter and run every gate through 'uv run'.
1 parent e420fca commit ac75a36

1 file changed

Lines changed: 11 additions & 9 deletions

File tree

.github/workflows/validate.yml

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -34,28 +34,30 @@ jobs:
3434
run: uv python install ${{ matrix.python-version }}
3535

3636
- name: Install dependencies and dev tools
37-
run: uv pip install --system -r requirements-dev.lock.txt ruff
37+
run: |
38+
uv venv --python ${{ matrix.python-version }}
39+
uv pip install -r requirements-dev.lock.txt ruff
3840
3941
- name: Lint with ruff
40-
run: ruff check .
42+
run: uv run ruff check .
4143

4244
- name: Run tests
43-
run: python -m pytest
45+
run: uv run python -m pytest
4446

4547
- name: Validate catalog
46-
run: python tools/validate_catalog.py
48+
run: uv run python tools/validate_catalog.py
4749

4850
- name: Verify public JSON exports
49-
run: python tools/export_catalog.py --check --target both
51+
run: uv run python tools/export_catalog.py --check --target both
5052

5153
- name: Verify browsable README indexes
52-
run: python tools/render_readmes.py --check
54+
run: uv run python tools/render_readmes.py --check
5355

5456
- name: Verify first-party content manifest
55-
run: python tools/build_content_manifest.py --check
57+
run: uv run python tools/build_content_manifest.py --check
5658

5759
- name: Verify runnable examples
58-
run: python tools/verify_examples.py
60+
run: uv run python tools/verify_examples.py
5961

6062
- name: Verify course folders
61-
run: python tools/verify_courses.py
63+
run: uv run python tools/verify_courses.py

0 commit comments

Comments
 (0)