Skip to content

Tomography plan family (promoted from hex-ob) #227

Tomography plan family (promoted from hex-ob)

Tomography plan family (promoted from hex-ob) #227

Workflow file for this run

---
name: CI
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v7
with:
persist-credentials: false
- name: Setup pixi
uses: prefix-dev/setup-pixi@2253d9c9310442c09975d64615591b5b381da6e7 # v0.10.0
with:
pixi-version: v0.71.3
environments: dev
cache: false
frozen: true
- name: Lint
run: pixi run --as-is -e dev pre-commit run --all-files
type-check:
name: Type Check
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v7
with:
persist-credentials: false
- name: Setup pixi
uses: prefix-dev/setup-pixi@2253d9c9310442c09975d64615591b5b381da6e7 # v0.10.0
with:
pixi-version: v0.71.3
environments: dev
cache: false
frozen: true
- name: Run type checks
run: pixi run --as-is -e dev ty check src tests
test:
name: Unit Tests - Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11", "3.12", "3.13"]
fail-fast: false
steps:
- name: Checkout code
uses: actions/checkout@v7
with:
persist-credentials: false
- name: Determine pixi environment
id: pixi
run: echo "env=py$(echo '${{ matrix.python-version }}' | tr -d '.')" >> "$GITHUB_OUTPUT"
- name: Setup Pixi
uses: prefix-dev/setup-pixi@2253d9c9310442c09975d64615591b5b381da6e7 # v0.10.0
with:
pixi-version: v0.71.3
environments: ${{ steps.pixi.outputs.env }}
cache: false
frozen: true
- name: Run tests
run: pixi run --as-is -e ${{ steps.pixi.outputs.env }} pytest --cov=src/hextools --cov-report=xml --cov-report=term
# Uncomment once codecov is enabled.
# - name: Upload coverage to Codecov
# uses: codecov/codecov-action@v5
# if: ${{ matrix.python-version == '3.13' }}
# with:
# name: Coverage
# files: coverage.xml
# fail_ci_if_error: true
# token: ${{ secrets.CODECOV_TOKEN }}