Skip to content

Commit 7dd8b07

Browse files
authored
CI: Update GHA to use uvx + tox-uv (#237)
1 parent dd03127 commit 7dd8b07

File tree

1 file changed

+14
-4
lines changed

1 file changed

+14
-4
lines changed

.github/workflows/ci.yml

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -34,10 +34,15 @@ jobs:
3434
with: {fetch-depth: 0} # deep clone for setuptools-scm
3535
- uses: actions/setup-python@v5
3636
with: {python-version: "3.10"}
37+
- uses: astral-sh/setup-uv@v5
3738
- name: Run static analysis and format checkers
38-
run: pipx run --python python3.10 tox -e lint,typecheck
39+
run: >-
40+
uvx --with tox-uv
41+
tox -e lint,typecheck
3942
- name: Build package distribution files
40-
run: pipx run --python python3.10 tox -e clean,build
43+
run: >-
44+
uvx --with tox-uv
45+
tox -e clean,build
4146
- name: Record the path of wheel distribution
4247
id: wheel-distribution
4348
run: echo "path=$(ls dist/*.whl)" >> $GITHUB_OUTPUT
@@ -77,6 +82,7 @@ jobs:
7782
- uses: actions/setup-python@v5
7883
with:
7984
python-version: ${{ matrix.python }}
85+
- uses: astral-sh/setup-uv@v5
8086
- name: Retrieve pre-built distribution files
8187
uses: actions/download-artifact@v4
8288
with: {name: python-distribution-files, path: dist/}
@@ -87,7 +93,8 @@ jobs:
8793
path: ${{ env.VALIDATE_PYPROJECT_CACHE_REMOTE }}
8894
- name: Run tests
8995
run: >-
90-
pipx run tox
96+
uvx --with tox-uv
97+
tox
9198
--installpkg '${{ needs.prepare.outputs.wheel-distribution }}'
9299
-- -n 5 -rFEx --durations 10 --color yes
93100
- name: Generate coverage report
@@ -118,6 +125,7 @@ jobs:
118125
- uses: actions/checkout@v4
119126
- uses: actions/setup-python@v5
120127
with: {python-version: "3.10"}
128+
- uses: astral-sh/setup-uv@v5
121129
- name: Retrieve pre-built distribution files
122130
uses: actions/download-artifact@v4
123131
with: {name: python-distribution-files, path: dist/}
@@ -127,4 +135,6 @@ jobs:
127135
TWINE_REPOSITORY: pypi
128136
TWINE_USERNAME: __token__
129137
TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }}
130-
run: pipx run tox -e publish
138+
run: >-
139+
uvx --with tox-uv
140+
tox -e publish

0 commit comments

Comments
 (0)