fooder-api/Makefile

49 lines
1.1 KiB
Makefile

VERSION=0.`git rev-list --count HEAD`
.PHONY: black
DOCKER_BUILD=docker build
ifeq ($(shell uname -m), arm64)
DOCKER_BUILD=docker buildx build --platform linux/amd64 --load
endif
api: fooder Dockerfile requirements/docker.txt
$(DOCKER_BUILD) -t registry.domandoman.xyz/fooder/api -f Dockerfile .
build: api
push:
docker push registry.domandoman.xyz/fooder/api
.PHONY: black mypy flake lint version create-venv test
black:
python -m black fooder
mypy:
python -m mypy fooder
flake:
python -m flake8 fooder
lint: black mypy flake
version:
@echo $(VERSION)
create-venv:
python3 -m venv .venv --prompt="fooderapi-venv" --system-site-packages
bash -c "source .venv/bin/activate && pip install -r requirements/local.txt"
test:
./test.sh
# Alembic
.PHONY: alembic alembic-upgrade alembic-downgrade
alembic: fooder
docker compose exec -e MSG="$(MSG)" api bash -c 'alembic -c /opt/fooder/fooder/alembic.ini revision --autogenerate -m "$${MSG}"'
alembic-upgrade:
docker compose exec api bash -c 'alembic -c /opt/fooder/fooder/alembic.ini upgrade head'
alembic-downgrade:
docker compose exec api bash -c 'alembic -c /opt/fooder/fooder/alembic.ini downgrade -1'