Skip to content

Feature/alchemy store #260

Feature/alchemy store

Feature/alchemy store #260

Workflow file for this run

name: PySATL CI
on:
push:
branches:
- main
pull_request:
jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.10", "3.11", "3.12"]
steps:
- name: Checkout repository
uses: actions/checkout@v5
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Checkout
uses: actions/checkout@v5
with:
submodules: recursive
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libcairo2-dev pkg-config
- name: Install Poetry
run: pip install poetry==2.1.1
- name: Install dependencies with Poetry
run: poetry install --with dev
- name: Run Ruff lint
run: poetry run ruff check --output-format=github
- name: Check formatting with Ruff
run: poetry run ruff format --check
- name: Run tests
run: poetry run pytest --random-order
- name: Check types
run: |
poetry run mypy .
- name: Tests with Coveralls
if: matrix.python-version == '3.12'
run: |
poetry run pytest --random-order --cov=pysatl_experiment --cov-config=.coveragerc
- name: Coveralls
if: matrix.python-version == '3.12'
env:
COVERALLS_REPO_TOKEN: ${{ secrets.coverallsToken }}
run: poetry run coveralls || true
- name: Remove poetry.lock before checking for changes
run: rm -f poetry.lock
- name: Check for repository changes
run: |
if [ -n "$(git status --porcelain)" ]; then
echo "Repository is dirty, changes detected:"
git status
git diff
exit 1
else
echo "Repository is clean, no changes detected."
fi