Skip to content

Commit e9000c0

Browse files
committed
Migrate CI workflows to use UV and checkout@v5
Replace actions/setup-python + Poetry steps with astral-sh/setup-uv and uv commands across workflows; update dependency/install/test commands to use uv (uv sync, uvx ruff, uv run pytest, uv build/publish). Bump actions/checkout to v5 in all workflows and extend build Python matrix to 3.10–3.13. Overall simplifies CI by centralizing tooling on UV and modernizing checkout/versioned actions.
1 parent 1343ccf commit e9000c0

5 files changed

Lines changed: 41 additions & 26 deletions

File tree

.github/workflows/build.yml

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,18 +6,17 @@ jobs:
66
runs-on: ubuntu-latest
77
strategy:
88
matrix:
9-
python-version: ["3.8", "3.9", "3.10", "3.11"]
9+
python-version: ["3.10", "3.11", "3.12", "3.13"]
1010
name: Build pyDataverse
1111
steps:
12-
- name: "Checkout"
13-
uses: "actions/checkout@v4"
14-
- name: Setup Python
15-
uses: actions/setup-python@v3
12+
- name: Checkout
13+
uses: actions/checkout@v5
14+
15+
- name: Install uv
16+
uses: astral-sh/setup-uv@v6
1617
with:
1718
python-version: ${{ matrix.python-version }}
19+
1820
- name: Install Python Dependencies
1921
run: |
20-
python3 -m pip install --upgrade pip
21-
python3 -m pip install poetry
22-
23-
poetry install
22+
uv sync --all-extras

.github/workflows/codespell.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,6 @@ jobs:
1818

1919
steps:
2020
- name: Checkout
21-
uses: actions/checkout@v4
21+
uses: actions/checkout@v5
2222
- name: Codespell
2323
uses: codespell-project/actions-codespell@v2

.github/workflows/lint.yml

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,5 +4,14 @@ jobs:
44
ruff:
55
runs-on: ubuntu-latest
66
steps:
7-
- uses: actions/checkout@v4
8-
- uses: chartboost/ruff-action@v1
7+
- name: Checkout
8+
uses: actions/checkout@v5
9+
10+
- name: Install uv
11+
uses: astral-sh/setup-uv@v6
12+
with:
13+
python-version: ${{ matrix.python-version }}
14+
15+
- name: Run ruff via uvx
16+
run: |
17+
uvx ruff check pyDataverse tests

.github/workflows/publish.yml

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,15 @@ jobs:
99
runs-on: ubuntu-latest
1010

1111
steps:
12-
- uses: actions/checkout@v2
13-
- name: "Build and publish to PyPi"
14-
uses: JRubics/poetry-publish@v1.17
15-
with:
16-
pypi_token: ${{ secrets.PYPI_TOKEN }}
12+
- name: Checkout
13+
uses: actions/checkout@v5
14+
15+
- name: Install uv
16+
uses: astral-sh/setup-uv@v6
17+
18+
- name: Build and publish to PyPi
19+
env:
20+
UV_PUBLISH_TOKEN: ${{ secrets.PYPI_TOKEN }}
21+
run: |
22+
uv build
23+
uv publish

.github/workflows/tests.yml

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,21 +11,21 @@ jobs:
1111
env:
1212
PORT: 8080
1313
steps:
14-
- name: "Checkout"
15-
uses: "actions/checkout@v4"
14+
- name: Checkout
15+
uses: actions/checkout@v5
16+
1617
- name: Run Dataverse Action
1718
id: dataverse
1819
uses: gdcc/dataverse-action@main
19-
- name: Setup Python
20-
uses: actions/setup-python@v3
20+
21+
- name: Install uv
22+
uses: astral-sh/setup-uv@v6
2123
with:
2224
python-version: ${{ matrix.python-version }}
25+
2326
- name: Install Python Dependencies
2427
run: |
25-
python3 -m pip install --upgrade pip
26-
python3 -m pip install poetry
27-
28-
poetry install --all-extras
28+
uv sync --all-extras
2929
3030
- name: Run tests
3131
env:
@@ -34,4 +34,4 @@ jobs:
3434
BASE_URL: ${{ steps.dataverse.outputs.base_url }}
3535
DV_VERSION: ${{ steps.dataverse.outputs.dv_version }}
3636
run: |
37-
python3 -m poetry run pytest
37+
uv run pytest

0 commit comments

Comments
 (0)