A complete sample project:
- Source code in
srcand tests intests - Source code organized in a module, specified in
setup.py .gitignoreignores all generated filesMakefileallows users to run static analysis and tests withmake. You can also clean up generated files withmake cleanpylintrcdefines configuration forpylint/pytest.inidefines configuration forpytest- Python libraries used are specified in
requirements.txt Jenkinsfiledefines steps for CI
-
Create/Activate a virtual environment
python3 -m venv .venv source .venv/bin/activate -
Install libraries
pip install -r requirements.txt -
Install source code as a module
pip install -e .
Type make to run:
- Static analysis using
flake8,pycodestyle, andpylint - Run
pytestwith coverage. The coverage metric is set to 95%