Skip to content

ci(dspy): Add Ruff linting workflow #117

ci(dspy): Add Ruff linting workflow

ci(dspy): Add Ruff linting workflow #117

Workflow file for this run

name: Lint, Commit, and Test
on:
push:
branches:
- main
pull_request:
env:
POETRY_VERSION: "1.6.1"
jobs:
lint:
name: Lint
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v5
- uses: chartboost/ruff-action@v1
with:
args: --fix-only
- uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: "Automatic Style fixes"
test:
name: Run Tests
needs: lint
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9"]
steps:
- uses: actions/checkout@v3
- name: Install poetry
run: pipx install poetry
- name: Set up python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "poetry"
- name: Install dependencies
run: poetry install --no-interaction --no-root
- name: Run tests with pytest
run: poetry run pytest tests/
build_poetry:
name: Build Poetry
needs: test
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9"]
steps:
- uses: actions/checkout@v3
- name: Install poetry
run: pipx install poetry
- name: Set up python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "poetry"
- name: Build
run: poetry build
- name: Install built package
run: python -m pip install dist/*.whl
- name: Test import dspy
run: python -c "import dspy"
- name: Test import dsp
run: python -c "import dsp"
build_setup:
name: Build Setup
needs: test
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.9"]
steps:
- uses: actions/checkout@v3
- name: Install poetry
run: pipx install poetry
- name: Set up python ${{ matrix.python-version }}
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "poetry"
- name: Run setup.py build
run: python setup.py build