chore: enhance CI workflow with caching, version display, and improved testing for CLI functionality
Some checks failed
CI / test (3.13) (push) Failing after 1m28s
Some checks failed
CI / test (3.13) (push) Failing after 1m28s
This commit is contained in:
@@ -28,17 +28,62 @@ jobs:
|
||||
with:
|
||||
enable-cache: true
|
||||
python-version: ${{ matrix.python-version }}
|
||||
|
||||
- name: Cache uv dependencies
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: |
|
||||
~/.cache/uv
|
||||
.venv
|
||||
key: ${{ runner.os }}-uv-${{ hashFiles('**/uv.lock') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-uv-
|
||||
|
||||
- name: Install dependencies
|
||||
run: |
|
||||
uv sync --all-extras --dev
|
||||
|
||||
- name: Show versions
|
||||
run: |
|
||||
python --version
|
||||
uv --version
|
||||
uv pip list
|
||||
|
||||
- name: Build package
|
||||
run: |
|
||||
uv build
|
||||
|
||||
- name: Test package installation
|
||||
run: |
|
||||
uv pip install dist/*.whl
|
||||
uv run quickbot --help
|
||||
|
||||
- name: Test CLI functionality
|
||||
run: |
|
||||
mkdir -p test_cli_output
|
||||
uv run quickbot init --output test_cli_output --project-name "CI Test" --description "Test Description" --author "CI" --license-name MIT --no-include-alembic --no-include-i18n --no-interactive
|
||||
ls -la test_cli_output/
|
||||
cat test_cli_output/pyproject.toml
|
||||
- name: Ruff (lint + format check)
|
||||
run: |
|
||||
uv run ruff check .
|
||||
uv run ruff format --check
|
||||
uv run ruff check src/ tests/
|
||||
uv run ruff format --check src/ tests/
|
||||
- name: MyPy
|
||||
run: |
|
||||
uv run mypy .
|
||||
- name: Pytest
|
||||
run: |
|
||||
uv run pytest
|
||||
uv run pytest tests/ --cov=src/quickbot_cli --cov-report=term-missing --cov-report=html -v
|
||||
env:
|
||||
NO_COLOR: "1"
|
||||
COLUMNS: "120"
|
||||
TERM: "dumb"
|
||||
PYTHONIOENCODING: "utf-8"
|
||||
|
||||
- name: Upload coverage artifacts
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: coverage-report
|
||||
path: htmlcov/
|
||||
retention-days: 30
|
||||
|
||||
Reference in New Issue
Block a user