-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathMakefile
40 lines (27 loc) · 828 Bytes
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
ENV_DIR = ./env
PIP := $(ENV_DIR)/bin/pip
.PHONY: all tests coverage clean pyclean docs format
all: tests
$(PIP):
python3 -m venv env
.reqs: $(PIP) requirements.txt
$(PIP) install -r requirements.txt
@touch $@
.reqs_dev: $(PIP) requirements_dev.txt
$(PIP) install -r requirements_dev.txt
@touch $@
.reqs_docs: .reqs requirements_docs.txt
$(PIP) install -r requirements_docs.txt
touch $@
tests: .reqs .reqs_dev
./env/bin/tox $(TEST_ARGS)
docs: .reqs .reqs_docs
./env/bin/sphinx-build docs docs/_build
coverage:
./env/bin/py.test --cov-report html --cov=cert_chain_resolver --cov-fail-under=90
pyclean:
find . -type f -name '*.py[co]' -delete -o -type d -name __pycache__ -delete
clean: pyclean
rm -rf .reqs_dev .reqs $(ENV_DIR) .tox
format: .reqs_dev .reqs
$(ENV_DIR)/bin/black tests cert_chain_resolver