65 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
args := $(wordlist 2, 100, $(MAKECMDGOALS))
 | 
						|
ifndef args
 | 
						|
MESSAGE = "No such command (or you pass two or many targets to ). List of possible commands: make help"
 | 
						|
else
 | 
						|
MESSAGE = "Done"
 | 
						|
endif
 | 
						|
 | 
						|
API_APPLICATION_NAME = api
 | 
						|
 | 
						|
services:
 | 
						|
	docker-compose -f docker-compose.yaml up -d --remove-orphans
 | 
						|
 | 
						|
start-api:
 | 
						|
	cd api && \
 | 
						|
	poetry run python -m ${API_APPLICATION_NAME}
 | 
						|
 | 
						|
start-client:
 | 
						|
	cd client && \
 | 
						|
	npm run dev
 | 
						|
 | 
						|
migrate:
 | 
						|
	cd api && \
 | 
						|
	cd $(API_APPLICATION_NAME)/db && \
 | 
						|
	PYTHONPATH='../..' ALEMBIC_MIGRATIONS=True poetry run alembic upgrade $(args)
 | 
						|
 | 
						|
downgrade:
 | 
						|
	cd api && \
 | 
						|
	cd $(API_APPLICATION_NAME)/db && \
 | 
						|
	PYTHONPATH='../..' poetry run alembic downgrade -1
 | 
						|
 | 
						|
revision:
 | 
						|
	cd api && \
 | 
						|
	cd $(API_APPLICATION_NAME)/db && \
 | 
						|
	PYTHONPATH='../..' ALEMBIC_MIGRATIONS=True poetry run alembic revision --autogenerate
 | 
						|
 | 
						|
venv-api:
 | 
						|
	cd api && \
 | 
						|
	poetry install
 | 
						|
 | 
						|
venv-client:
 | 
						|
	cd client && \
 | 
						|
	npm install
 | 
						|
 | 
						|
install:
 | 
						|
	make migrate head && \
 | 
						|
	cd api && \
 | 
						|
	poetry run python3  -m api.utils.init
 | 
						|
 | 
						|
%::
 | 
						|
	echo $(MESSAGE)
 | 
						|
 | 
						|
format-api:
 | 
						|
	cd api && \
 | 
						|
	poetry run ruff format .
 | 
						|
 | 
						|
 | 
						|
check-api:
 | 
						|
	cd api && \
 | 
						|
	poetry run ruff format . --check
 | 
						|
 | 
						|
regenerate-openapi-local:
 | 
						|
	cd client \
 | 
						|
	rm src/types/openapi-types.ts \
 | 
						|
	npx openapi-typescript http://localhost:8000/openapi -o src/types/openapi-types.ts
 |