Skip to content
This repository was archived by the owner on Aug 29, 2025. It is now read-only.

Commit 91af979

Browse files
committed
ci: Use mise tools and tasks instead of poe and uv
1 parent fc48ed6 commit 91af979

File tree

9 files changed

+107
-108
lines changed

9 files changed

+107
-108
lines changed

.github/actions/uv-project-setup/action.yaml

Lines changed: 0 additions & 13 deletions
This file was deleted.

.github/workflows/check-mypy.yaml

Lines changed: 0 additions & 17 deletions
This file was deleted.

.github/workflows/check-pyright.yaml

Lines changed: 0 additions & 19 deletions
This file was deleted.

.github/workflows/check-ruff.yaml

Lines changed: 0 additions & 19 deletions
This file was deleted.

.github/workflows/ci.yaml

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,27 +15,44 @@ permissions:
1515
jobs:
1616
mise-cache:
1717
uses: nikobockerman/github-workflows/.github/workflows/mise-prepare-cache.yaml@261e8683f0b52b7f6a9d91e2ea639a46f168ce8a
18+
uv-cache:
19+
needs: mise-cache
20+
uses: ./.github/workflows/mise-uv-prepare-cache.yaml
1821
check-mypy:
19-
uses: ./.github/workflows/check-mypy.yaml
22+
needs: uv-cache
23+
uses: ./.github/workflows/mise-uv-task.yaml
24+
with:
25+
task: check:mypy
2026
check-prettier:
2127
needs: mise-cache
2228
uses: nikobockerman/github-workflows/.github/workflows/mise-task.yaml@261e8683f0b52b7f6a9d91e2ea639a46f168ce8a
2329
with:
2430
task: check:prettier
2531
check-pyright:
26-
needs: mise-cache
27-
uses: ./.github/workflows/check-pyright.yaml
32+
needs: uv-cache
33+
uses: ./.github/workflows/mise-uv-task.yaml
34+
with:
35+
task: check:pyright
2836
check-renovate-config:
2937
needs: mise-cache
3038
uses: nikobockerman/github-workflows/.github/workflows/mise-task.yaml@261e8683f0b52b7f6a9d91e2ea639a46f168ce8a
3139
with:
3240
task: check:renovateconfig
3341
check-ruff:
34-
uses: ./.github/workflows/check-ruff.yaml
42+
needs: mise-cache
43+
uses: nikobockerman/github-workflows/.github/workflows/mise-task.yaml@261e8683f0b52b7f6a9d91e2ea639a46f168ce8a
44+
with:
45+
task: "check:ruff ::: check:ruff::format"
3546
test-pytest:
36-
uses: ./.github/workflows/test-pytest.yaml
47+
needs: uv-cache
48+
uses: ./.github/workflows/mise-uv-task.yaml
49+
with:
50+
task: check:pytest
3751
run-all:
38-
uses: ./.github/workflows/run-all.yaml
52+
needs: uv-cache
53+
uses: ./.github/workflows/mise-uv-task.yaml
54+
with:
55+
task: runall
3956

4057
check:
4158
needs:
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Mise + uv - prepare cache
2+
on:
3+
workflow_call:
4+
permissions:
5+
contents: read
6+
7+
jobs:
8+
prepare-cache:
9+
name: Prepare uv cache
10+
runs-on: ubuntu-latest
11+
timeout-minutes: 30
12+
steps:
13+
- name: Prepare
14+
id: prepare
15+
env:
16+
RUNNER_TEMP: ${{ runner.temp }}
17+
run: |
18+
echo "UV_CACHE_DIR=${RUNNER_TEMP}/uv-cache" >> "$GITHUB_OUTPUT"
19+
- name: Checkout
20+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
21+
- name: Setup mise
22+
uses: nikobockerman/github-actions/.github/actions/mise-project-setup@e016a979d6e455bb4023977985040870b466cace
23+
- name: uv cache
24+
uses: actions/cache@v4 # TODO: Pin to digest and comment version
25+
with:
26+
path: |
27+
${{ steps.prepare.outputs.UV_CACHE_DIR }}
28+
.venv
29+
key: uv-${{ hashFiles('uv.lock') }}
30+
restore-keys: |
31+
uv-
32+
- name: Install uv dependencies
33+
env:
34+
UV_CACHE_DIR: ${{ steps.prepare.outputs.UV_CACHE_DIR }}
35+
run: uv sync --locked --no-install-project
36+
- name: Minimize uv cache
37+
env:
38+
UV_CACHE_DIR: ${{ steps.prepare.outputs.UV_CACHE_DIR }}
39+
run: uv cache prune --ci
Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Mise + uv - run task
2+
on:
3+
workflow_call:
4+
inputs:
5+
task:
6+
description: Task to run
7+
required: true
8+
type: string
9+
permissions:
10+
contents: read
11+
12+
jobs:
13+
task:
14+
name: Run mise task with uv - ${{ inputs.task }}
15+
runs-on: ubuntu-latest
16+
timeout-minutes: 30
17+
steps:
18+
- name: Prepare
19+
id: prepare
20+
env:
21+
RUNNER_TEMP: ${{ runner.temp }}
22+
run: |
23+
echo "UV_CACHE_DIR=${RUNNER_TEMP}/uv-cache" >> "$GITHUB_OUTPUT"
24+
- name: Checkout
25+
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
26+
- name: Setup mise
27+
uses: nikobockerman/github-actions/.github/actions/mise-project-setup@e016a979d6e455bb4023977985040870b466cace
28+
- name: Restore uv cache
29+
uses: actions/cache/restore@v4 # TODO: Pin to digest and comment version
30+
with:
31+
fail-on-cache-miss: true
32+
key: uv-${{ hashFiles('uv.lock') }}
33+
path: |
34+
${{ steps.prepare.outputs.UV_CACHE_DIR }}
35+
.venv
36+
- name: Ensure complete cache restore
37+
env:
38+
UV_CACHE_DIR: ${{ steps.prepare.outputs.UV_CACHE_DIR }}
39+
run: uv sync --check --no-install-project
40+
- name: Install project
41+
env:
42+
UV_CACHE_DIR: ${{ steps.prepare.outputs.UV_CACHE_DIR }}
43+
run: uv sync --locked --offline
44+
- name: Run task - ${{ inputs.task }}
45+
run: mise run ${{ inputs.task }}

.github/workflows/run-all.yaml

Lines changed: 0 additions & 17 deletions
This file was deleted.

.github/workflows/test-pytest.yaml

Lines changed: 0 additions & 17 deletions
This file was deleted.

0 commit comments

Comments
 (0)