59 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
| ENV_PATH ?= .venv
 | |
| PYTHON_PATH = $(ENV_PATH)/bin/python3
 | |
| PYTHON_VERSION ?= 3.10
 | |
| UV_ARGS ?= --offline
 | |
| DOCKER ?= podman
 | |
| COMPOSE ?= podman compose
 | |
| 
 | |
| venv_extract_requirements:
 | |
| 	$(ENV_PATH)/bin/tomlq \
 | |
| 	-r '.project.dependencies | join("\n")' \
 | |
| 	pyproject.toml > requirements.in
 | |
| 
 | |
| venv_compile:
 | |
| 	uv pip compile \
 | |
| 	$(UV_ARGS) \
 | |
| 	-p $(PYTHON_VERSION) \
 | |
| 	--generate-hashes \
 | |
| 	requirements.in  > \
 | |
| 	requirements.txt
 | |
| 
 | |
| 
 | |
| venv:
 | |
| 	uv \
 | |
| 		venv \
 | |
| 		-p 3.13 \
 | |
| 		$(UV_ARGS) \
 | |
| 		--seed \
 | |
| 		$(ENV_PATH)
 | |
| 	uv \
 | |
| 		pip install \
 | |
| 		$(UV_ARGS) \
 | |
| 		-p $(ENV_PATH) \
 | |
| 		-r requirements.txt
 | |
| 
 | |
| pyright:
 | |
| 	$(ENV_PATH)/bin/python3 -m pyright \
 | |
| 		-p pyproject.toml \
 | |
| 		--pythonpath $(PYTHON_PATH)
 | |
| 
 | |
| 
 | |
| compose_env:
 | |
| 	cat docker/postgresql/.env .env/postgresql.env > .env/postgresql.patched.env
 | |
| 	cat docker/web/.env .env/web.env > .env/web.patched.env
 | |
| 
 | |
| compose_build_web:
 | |
| 	$(COMPOSE) build web
 | |
| 
 | |
| git-release:
 | |
| 	git archive \
 | |
| 		--format=tar \
 | |
| 		-o "releases/tar/repo-$$(git describe --tags).tar" \
 | |
| 		HEAD
 | |
| 
 | |
| ALEMBIC_CMD ?= --help
 | |
| alembic:
 | |
| 	$(ENV_PATH)/bin/alembic \
 | |
| 	-c pyproject.toml \
 | |
| 	$(ALEMBIC_CMD)
 |