Docker and testing changes
[wolnelektury.git] / Makefile
1 .PHONY: deploy test up down build shell logs restart
2
3
4 UID := $(shell id -u)
5 GID := $(shell id -g)
6
7
8 deploy: src/wolnelektury/localsettings.py
9         pip install -r requirements/requirements.txt
10         src/manage.py migrate --noinput
11         src/manage.py update_counters
12         src/manage.py collectstatic --noinput
13
14
15 TEST_COMPOSE := docker compose -f docker-compose.test.yml
16
17 test:
18         mkdir -p htmlcov
19         UID=$(UID) GID=$(GID) $(TEST_COMPOSE) run --rm --build test sh -c '\
20           python -Wall -m coverage run --branch --source=. ./manage.py test $(ARGS); s=$$?; \
21           coverage report --skip-covered; coverage html -d /app/htmlcov; exit $$s'; \
22         status=$$?; $(TEST_COMPOSE) down; exit $$status
23
24
25 up:
26         UID=$(UID) GID=$(GID) docker compose up --build -d
27
28 down:
29         docker compose down
30
31 build:
32         UID=$(UID) GID=$(GID) docker compose build
33
34 shell:
35         UID=$(UID) GID=$(GID) docker compose exec web bash
36
37 logs:
38         docker compose logs -f
39
40 restart:
41         docker compose restart