Skip to content

Commit c0467de

Browse files
committed
TST: add test that pixi lock file is consistent with pyproject.toml [ci doc]
1 parent 85257fe commit c0467de

File tree

1 file changed

+30
-1
lines changed

1 file changed

+30
-1
lines changed

.github/workflows/pixi_tests.yml

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,13 +22,38 @@ on:
2222
permissions: {}
2323

2424
jobs:
25+
check-lockfile:
26+
runs-on: ubuntu-24.04
27+
permissions:
28+
contents: read
29+
30+
steps:
31+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
32+
with:
33+
fetch-depth: 0
34+
persist-credentials: false
35+
36+
- name: Set up pixi
37+
uses: prefix-dev/setup-pixi@v0.9.4
38+
with:
39+
pixi-version: v0.66.0
40+
run-install: false
41+
42+
- name: Check that pixi.lock is up to date
43+
run: |
44+
if ! pixi install --locked --manifest-path pyproject.toml; then
45+
echo "::error file=pixi.lock::pixi.lock is not consistent with pyproject.toml. Run 'pixi lock' locally and commit the updated pixi.lock."
46+
exit 1
47+
fi
48+
2549
pixi-linux-install:
50+
needs: check-lockfile
2651
runs-on: ubuntu-24.04
2752
permissions:
2853
contents: read
2954

3055
steps:
31-
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
56+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
3257
with:
3358
fetch-depth: 0
3459
persist-credentials: false
@@ -40,15 +65,19 @@ jobs:
4065
locked: true
4166
cache: true
4267
cache-write: ${{ github.event_name == 'push' && github.ref_name == 'main' }}
68+
4369
- name: Show pixi info
4470
run: |
4571
pixi info
4672
pixi list
73+
4774
- name: Clean build artifacts
4875
run: |
4976
rm -rf build meson-logs meson-private .mesonpy-*
77+
5078
- name: Install Matplotlib editable
5179
run: pixi run python -m pip install --config-settings=setup-args="-Db_lto=false" --editable .
80+
5281
- name: Smoke test editable install
5382
run: |
5483
pixi run python -c "import matplotlib; print(matplotlib.__version__)"

0 commit comments

Comments
 (0)