Skip to content

Commit 873b64f

Browse files
Add Pixi CI workflow for testing and building
1 parent 29b4755 commit 873b64f

1 file changed

Lines changed: 59 additions & 0 deletions

File tree

Lines changed: 59 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,59 @@
1+
name: Pixi CI
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
test-and-build:
8+
runs-on: ${{ matrix.os }}
9+
strategy:
10+
matrix:
11+
os: [ubuntu-latest] # İsterseniz: [ubuntu-latest, macos-latest]
12+
python-version: ["3.11", "3.12", "3.13", "3.14"]
13+
fail-fast: false
14+
15+
steps:
16+
- name: 📥 Checkout code
17+
uses: actions/checkout@v7
18+
19+
- name: 🐍 Set up Python ${{ matrix.python-version }}
20+
uses: actions/setup-python@v6
21+
with:
22+
python-version: ${{ matrix.python-version }}
23+
24+
- name: 🚀 Install Pixi
25+
uses: prefix-dev/setup-pixi@v0.10.0
26+
with:
27+
pixi-version: "latest"
28+
29+
- name: 🧠 Cache Pixi environments & cache
30+
uses: actions/cache@v6
31+
with:
32+
path: |
33+
~/.cache/pixi
34+
~/.pixi/envs
35+
key: ${{ runner.os }}-pixi-${{ hashFiles('pixi.lock') }}
36+
restore-keys: |
37+
${{ runner.os }}-pixi-
38+
39+
- name: 📦 Install dependencies
40+
run: pixi install --frozen
41+
42+
- name: 🔧 Install package in editable mode
43+
run: pixi run pip install -e .
44+
45+
- name: 🧪 Run tests
46+
run: pixi run test
47+
48+
- name: 🏗️ Build package (wheel + sdist)
49+
run: pixi run build
50+
# Gerekiyorsa `build` görevini pixi.toml'da tanımlamış olmalısınız:
51+
# [tasks]
52+
# build = "python -m build"
53+
54+
- name: 📤 Upload build artifacts
55+
uses: actions/upload-artifact@v7
56+
with:
57+
name: kha256-dist-${{ matrix.os }}-py${{ matrix.python-version }}
58+
path: dist/
59+
if-no-files-found: ignore

0 commit comments

Comments
 (0)