CI/CD Integration
Run Quell in CI to enforce edge-case coverage on every pull request.
Basic setup
quell ci src/ --threshold 75
Exits non-zero if the Production Readiness Score is below 75. Use in any CI system that checks exit codes.
GitHub Actions
# .github/workflows/quell.yml
name: Quell edge case check
on: [push, pull_request]
jobs:
quell:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: "3.11"
- run: pip install quelltest
- run: quell ci src/ --threshold 75
Or use quell install github-action to generate this automatically.
GitLab CI
quell:
image: python:3.11
script:
- pip install quelltest
- quell ci src/ --threshold 75
CircleCI
jobs:
quell:
docker:
- image: cimg/python:3.11
steps:
- checkout
- run: pip install quelltest
- run: quell ci src/ --threshold 75
Setting thresholds
Configure in pyproject.toml to avoid repeating flags:
[tool.quell]
threshold = 75
paths = ["src/"]
Then just run quell ci with no arguments.
Recommended thresholds
| Project stage | Threshold |
|---|---|
| Early development | 60 |
| Pre-launch | 75 |
| Production | 80+ |
Start lower and ratchet up. The goal is to never go backwards.