Skip to content
Snippets Groups Projects
Select Git revision
  • 9bfb036d2438579625888c5af0b09cdaf12f4287
  • master default
  • ldapi-support
  • v1.3.3
  • v1.4.0
  • v1.3.2
  • v1.3.0
  • v1.1.2
  • v1.1.1
  • v1.1.0
  • v1.0.1
  • v1.0.0
  • v0.4.0
  • v0.2.0
  • v0.3.0
  • v0.1.1
  • v0.1.0
17 results

Makefile

Blame
  • Makefile 1.06 KiB
    .PHONY: help dev clean update test lint pre-commit
    
    VENV_NAME?=venv
    VENV_ACTIVATE=. $(VENV_NAME)/bin/activate
    PYTHON=${VENV_NAME}/bin/python3
    
    .DEFAULT: help
    help:
    	@echo "make dev"
    	@echo "       prepare development environment, use only once"
    	@echo "make clean"
    	@echo "       delete development environment"
    	@echo "make update"
    	@echo "       update dependencies"
    	@echo "make test"
    	@echo "       run tests"
    	@echo "make lint"
    	@echo "       run black"
    	@echo "make pre-commit"
    	@echo "       run pre-commit hooks"
    
    dev:
    	make venv
    
    venv: $(VENV_NAME)/bin/activate
    $(VENV_NAME)/bin/activate:
    	test -d $(VENV_NAME) || virtualenv -p python3 $(VENV_NAME)
    	${PYTHON} -m pip install -U pip
    	${PYTHON} -m pip install -r dev_requirements.txt
    	$(VENV_NAME)/bin/pre-commit install
    	touch $(VENV_NAME)/bin/activate
    
    clean:
    	rm -rf venv
    
    update:
    	${PYTHON} -m pip install -U -r dev_requirements.txt
    	$(VENV_NAME)/bin/pre-commit install
    
    test: venv
    	${PYTHON} -m pytest
    
    lint: venv
    	$(VENV_NAME)/bin/black -t py310 --exclude $(VENV_NAME) .
    
    pre-commit: venv
    	$(VENV_NAME)/bin/pre-commit