Skip to content

Commit ff5866e

Browse files
committed
update Makefile
1 parent 3f2da3f commit ff5866e

1 file changed

Lines changed: 20 additions & 28 deletions

File tree

Makefile

Lines changed: 20 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,50 @@
11
APP = $(notdir $(CURDIR))
22
TAG = $(shell echo "$$(date +%F)-$$(git rev-parse --short HEAD)")
3+
GREEN := \033[0;32m
4+
NC := \033[0m
35

4-
help:
5-
@echo "Run make <target> where target is one of the following..."
6-
@echo
7-
@echo " all - run requirements, lint, test, and build"
8-
@echo " requirements - install runtime dependencies"
9-
@echo " development-requirements - install development dependencies"
10-
@echo " pre-commit-install - install pre-commit hooks"
11-
@echo " pre-commit-update - update pre-commit hooks"
12-
@echo " pre-commit-run - run pre-commit on all files"
13-
@echo " pre-commit-clean - remove pre-commit hooks"
14-
@echo " lint - run ruff checks"
15-
@echo " fmt - format code with ruff"
16-
@echo " test - run unit tests"
17-
@echo " build - build docker container"
18-
@echo " clean - clean up workspace and containers"
19-
20-
all: requirements lint test build
21-
22-
requirements:
6+
help: ## Show this help message
7+
@echo "$(GREEN)Usage: make [target]$(NC)"
8+
@echo ''
9+
@echo "$(GREEN)Available targets:$(NC)"
10+
@awk 'BEGIN {FS = ":.*?## "} /^[a-zA-Z_-]+:.*?## / {printf " %-25s %s\n", $$1, $$2}' $(MAKEFILE_LIST)
11+
12+
all: requirements lint test build ## Run requirements, lint, test, and build
13+
14+
requirements: ## Install runtime dependencies
2315
pip install --quiet --upgrade --requirement requirements.txt
2416

25-
development-requirements: requirements
17+
development-requirements: requirements ## Install development dependencies
2618
pip install --quiet --upgrade --requirement development-requirements.txt
2719

28-
pre-commit-install: development-requirements
20+
pre-commit-install: development-requirements ## Install pre-commit hooks
2921
pre-commit install
3022
detect-secrets scan > .secrets.baseline
3123

32-
pre-commit-update: development-requirements
24+
pre-commit-update: development-requirements ## Update pre-commit hooks
3325
pre-commit autoupdate
3426
$(MAKE) pre-commit-run
3527

36-
pre-commit-run: development-requirements
28+
pre-commit-run: development-requirements ## Run pre-commit on all files
3729
pre-commit run --all-files
3830

3931
x_pre-commit-clean:
4032
pre-commit uninstall
4133

42-
lint:
34+
lint: ## Run ruff checks
4335
ruff check *.py
4436

45-
fmt:
37+
fmt: ## Format code with ruff
4638
ruff format *.py
4739
ruff check --fix *.py
4840

49-
test:
41+
test: ## Run unit tests
5042
python -m unittest --verbose --failfast
5143

52-
build: lint test
44+
build: lint test ## Build docker container
5345
docker build --tag $(APP):$(TAG) .
5446

55-
clean:
47+
clean: ## Clean up workspace and containers
5648
docker container stop $(APP) || true
5749
docker container rm $(APP) || true
5850
@rm -rf ./__pycache__ ./tests/__pycache__ .ruff_cache

0 commit comments

Comments
 (0)