Added project skeleton
This commit is contained in:
parent
65e7b506b3
commit
0d8f788c59
8 changed files with 116 additions and 1 deletions
49
Makefile
Normal file
49
Makefile
Normal file
|
|
@ -0,0 +1,49 @@
|
|||
# =====CONFIG=====
|
||||
PYTHON := python3
|
||||
# This can't contain spaces (I think)
|
||||
VENV := .venv
|
||||
# Minimum % coverage for tests to succeed
|
||||
MIN_COV := 50
|
||||
|
||||
|
||||
# =====GENERAL=====
|
||||
## By default, create the venv
|
||||
all: venv
|
||||
.PHONY: all
|
||||
|
||||
## Remove any temporary files
|
||||
clean:
|
||||
@ rm -rf '$(VENV)'
|
||||
.PHONY: clean
|
||||
|
||||
|
||||
# =====BACKEND=====
|
||||
## VENV
|
||||
### Create the venv
|
||||
$(VENV)/bin/activate: setup.cfg
|
||||
@ '$(PYTHON)' -m venv '$(VENV)'
|
||||
@ '$(VENV)'/bin/pip install -e .[develop]
|
||||
|
||||
|
||||
### Convenient alias for the venv
|
||||
venv: $(VENV)/bin/activate
|
||||
.PHONY: venv
|
||||
|
||||
|
||||
## Formatting & linting
|
||||
### Format the codebase using black
|
||||
format: venv
|
||||
@ '$(VENV)'/bin/black setup.py app
|
||||
.PHONY: format
|
||||
|
||||
### Lint using black & flake8
|
||||
lint: venv
|
||||
@ '$(VENV)'/bin/flake8 setup.py app
|
||||
@ '$(VENV)'/bin/black --check setup.py app
|
||||
.PHONY: lint
|
||||
|
||||
|
||||
## Testing
|
||||
test: venv
|
||||
@ '$(VENV)'/bin/pytest --cov=app --cov-fail-under='$(MIN_COV)' tests/
|
||||
.PHONY: test
|
||||
Reference in a new issue