fix: add Poetry caching to CI workflow
Some checks failed
CI / test (push) Has been cancelled
CI / build (push) Has been cancelled

This commit is contained in:
2026-02-02 02:26:12 +00:00
parent 7c90b04181
commit a36ff976ab

View File

@@ -2,50 +2,82 @@ name: CI
on:
push:
branches: [ main ]
branches: [main]
pull_request:
branches: [ main ]
branches: [main]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Cache Poetry installation
- name: Install Poetry
uses: snok/install-poetry@v1
with:
virtualenvs-create: true
virtualenvs-in-project: true
installer-parallel: true
- name: Cache Poetry dependencies
uses: actions/cache@v4
with:
path: |
~/.local
~/.cache/pypoetry
key: poetry-${{ runner.os }}-${{ hashFiles('**/poetry.lock') }}
path: ~/.cache/pypoetry
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
restore-keys: |
poetry-${{ runner.os }}-
- name: Install Poetry
run: |
curl -sSL https://install.python-poetry.org | python3 -
echo "$HOME/.local/bin" >> $GITHUB_PATH
${{ runner.os }}-poetry-
- name: Install dependencies
run: |
poetry install
poetry install --with dev
- name: Run tests
run: |
poetry run pytest tests/ -v --tb=short
poetry run pytest tests/ -v
- name: Run linting
run: |
poetry run ruff check codechunk/ tests/
poetry run ruff check codechunk tests
- name: Run type checking
run: |
poetry run mypy codechunk/ tests/
poetry run mypy codechunk
# End of CI workflow
build:
runs-on: ubuntu-latest
needs: test
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install Poetry
uses: snok/install-poetry@v1
with:
virtualenvs-create: true
virtualenvs-in-project: true
installer-parallel: true
- name: Cache Poetry dependencies
uses: actions/cache@v4
with:
path: ~/.cache/pypoetry
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }}
restore-keys: |
${{ runner.os }}-poetry-
- name: Build package
run: |
poetry build
- name: Verify build
run: |
poetry run pip install dist/*.whl --dry-run