This repository provides a minimal Python project designed to showcase a modern CI/CD pipeline using GitHub Actions with the following quality checks:
- ✔ Unit testing with pytest
- ✔ Static code analysis with pylint
- ✔ Type checking with mypy
- ✔ A CI pipeline with three separate jobs:
lint→ pylinttype-check→ mypytests→ pytest (depends on the other two)
The goal is to offer a clean and professional example of a Python workflow with proper quality gates and continuous integration.
├─ src/
| └─ app.py
├─ requirements.txt
├─ tests/
| └─ test_app.py
├─ mypy.ini
├─ pytest.ini
├─ .pylintrc.py
├─ .gitignore
└─ .github/
| └─ workflows/
| | └─ ci.yml
python -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt
pylint src/app.py
mypy src/app.py
pytest -v
deactivate
Gaetano Vespero
DevOps & Automation Engineer | Specialist in CI/CD + AI Workflow Integration